Zmodem 最早是设计用来在串行连接(uart、rs232、rs485)上进行数据传输的,比如,在 minicom 下,我们就可以方便的用 Zmodem (说 sz 、rz 可能大家更熟悉)传输文件。只不过串口本身传输速度不快,文件大的话会让人有点崩溃。

没有彻底把笔记本装成 mint 前,在 windows 下都是用 secureCRT 来和板子进行通信的。secureCRT 下通过 ssh 连接开发板时, 可以方便的使用 Zmodem来进行文件的上传下载,但是,在 ubuntu 下似乎不是那么好实现。所以,也就一直在用 scp。

今天用腻了 scp,想恢复方便的 sz、rz,折腾了半天,终于找到了方法。

首先,mint(ubuntu、debian 类似)下需要安装下面两个包,都是官方包:

sudo apt-get install lrzsz
sudo apt-get install zssh

其中,zssh 提供了一个在当前 ssh 中连接中进行文件传输的“管道”,真正执行 Zmodem 传输的,还是 lrzsz。当然,板子上也是要有 lrzsz 包的,这需要自己交叉编译放上去。

1、 使用 zssh 替代 ssh 连接到目标系统,并登入:

luo@Luo-X220 ~ $ zssh root@192.168.1.230
Press ^@ (C-Space) to enter file transfer mode, then ? for help root@192.168.1.230's password:
[root@FriendlyARM /]#

2、下载文件到本地。比如,我们想从目标系统下载 /www/leds.html 到本地:

[root@FriendlyARM /www]# ls
images leds.cgi webcam.html
index.html leds.html
led-result.template mini2440.png
[root@FriendlyARM /www]# sz leds.html
�B00000000000000
(此处,按 ctrl + @ 进入文件传输状态)
zssh > rz
Receiving: leds.html
Bytes received: 4889/ 4889 BPS:646854 Transfer complete
[root@FriendlyARM /www]#

在目标系统输入 sz (send in Zmodem)时,我们开启了文件发送,此处可能会有乱码,暂时不管;然后,按 Ctrl+@ 进入文件传输模式,输入 rz 并回车进行文件下载,下载完成后,自动退出文件传输模式。 进入文件下载模式后,事实上,是进入了本机的一个终端,我们还可以使用常用命令行工具如ls,mkdir 等进行一些操作。另外,还有由 zssh 解析的如下工具:

3. 发送文件到目标系统。比如,我们要上传文件

[root@FriendlyARM /tmp]# ls
qtembedded-0 usb3g.modemstatus
[root@FriendlyARM /tmp]#
(此处,按 ctrl + @ 进入文件传输状态)
zssh > ls
Audiobooks Documents Music Public temp Videos
build Downloads Pictures refer Templates work
Desktop leds.html Podcasts router usr
zssh > cd /tmp/
zssh > ls
dropbear-2016.74 matecorba-luo pcaptest_F pulse-vXbjEXNVREX3
dropbear-2016.74.tar.bz2 mintUpdate plugtmp ssh-oTlcUBNo1637
keyring-9RSy6J mozilla_luo0 pulse-PKdhtXMmr18n
zssh > sz dropbear-2016.74.tar.bz2
Sending: dropbear-2016.74.tar.bz2
Bytes Sent:1622234 BPS:3780858 Transfer complete
[root@FriendlyARM /tmp]# ls
dropbear-2016.74.tar.bz2 qtembedded-0 usb3g.modemstatus
[root@FriendlyARM /tmp]#

上面的操作中,我们直接按 ctrl+@ 进入文件传输模式,然后,在文件传输模式中,使用 cd 指令切换到本机的 /tmp/ 目录(dropbear-2016.74.tar.bz2 放在这里),然后输入 sz dropbear-2016.74.tar.bz2 并回车,自动完成传输。

that's all!

使用 zssh 进行 Zmodem 文件传输的更多相关文章

  1. ssh文件传输命令:sz与rz命令

    内容概要: rz 上传文件到linux服务器,会出现选择框 sz filename 下载linux文件到windows 一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用s ...

  2. 如何在Linux中使用rz/sz工具进行文件传输

    在Linux中,使用rz/sz工具能够进行Linux和windows之间的文件传输,那么要如何使用rz/sz工具工具呢?下面小编就给大家介绍下Linux下如何使用rz/sz工具进行文件传输,一起来学习 ...

  3. [Command] lrzsz - 文件传输工具包

    lrzsz 是一个支持 XMODEM.YMODEM.ZMODEM 文件传输协议的 Unix 程序包.它是 Omen Technologies 公司所有的 rzsz 程序包的公开发行增强版,遵守 GNU ...

  4. 实现linux和windows文件传输

    其实这个题目有点大,这里介绍的只是linux和windows文件传输中的一种,但是这种方法却非常实用,那就是:ZModem协议具体是linux命令是:rz和sz但是其实它们是两个非常方便的工具.   ...

  5. Linux下rz,sz与ssh的配合使用,实现文件传输

    一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地:    与ss ...

  6. linux rz sz文件传输 ZModem协议

    比ftp和scp方便点.需要用支持ZModem协议的工具,SecureCRT是可以的 rz: 接收文件 sz: 发送文件 安装 # sudo apt-get install lrzsz 使用 协议介绍 ...

  7. Linux下几种文件传输命令 sz rz sftp scp

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  8. [原创] Linux下几种文件传输命令 sz rz sftp scp介绍

    Linux下几种文件传输命令 sz rz sftp scp介绍 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具.由于它是基于SSH的,会在传输过程中对用户的密码.数据等 ...

  9. 在linux系统上文件传输的小技巧

    各位做运维的小伙伴,你是不是常常在为文件传到linux服务器上感到头疼呢,我们知道常用的文件传输工具有好多,比如xftp,winscp等,但是有没有比这更简单的呢?当然是有的呢,下面给大家介绍下: y ...

随机推荐

  1. 浅谈c#中的delegate和event了

    一.开篇忏悔 对自己最拿手的编程语言C#,我想对你说声对不起,因为我到现在为止才明白c#中的delegate和event是怎么用的,惭愧那.好了,那就趁着阳光明媚的早晨简单来谈谈delegate和ev ...

  2. 1、软件工程师要阅读的书籍 - IT软件人员书籍系列文章

    软件工程师要阅读的书籍估计是项目组内最多的.软件工程师处于项目组中最基础的人员储备阶层,与项目的关系最密切.当然,现在是大数据时代,我们无法全部看完所有相关的书籍,只能够先学习工作需要的知识,然后在项 ...

  3. SQL Server 2008 标准版不支持Reporting Services的数据驱动订阅

    今天开发同事找我,说为什么Reporting Services服务器的报表管理的订阅选项里面只有"新建订阅"选项, 没有"数据驱动订阅"选项,说实话,我也基本上 ...

  4. 记一道有意思的算法题Rotate Image(旋转图像)

    题出自https://leetcode.com/problems/rotate-image/ 内容为: You are given an n x n 2D matrix representing an ...

  5. .NET应用架构设计—面向对象分析与设计四色原型模式(彩色建模、领域无关模型)(概念版)

    阅读目录: 1.背景介绍 2.问自己,UML对你来说有意义吗?它帮助过你对系统进行分析.建模吗? 3.一直以来其实我们被一个缝隙隔开了,使我们对OOAD遥不可及 4.四色原型模式填补这个历史缝隙,让我 ...

  6. 【转】HiveQL:对数据定义的学习

    1.Hive中的数据库: 它是表的一个目录或者命名空间,用来避免表命名冲突,我们通常使用数据库来将生产表组织成逻辑组. 基本命令: (1)创建一个数据库(如果不存在该数据库): create data ...

  7. OpenSessionInViewFilter配置和作用

    Spring为我们解决Hibernate的Session的关闭与开启问题. Hibernate 允许对关联对象.属性进行延迟加载,但是必须保证延迟加载的操作限于同一个 Hibernate Sessio ...

  8. Jenkins学习九:Jenkins插件之构建MSBuild

    Jenkins是Java语言编写的,一直好奇是否可以构建NET语言的项目,目前只了解到有一个插件MSBuild支持构建NET项目. 一.Jenkins安装插件MSBuild 二.VS构建CsharpH ...

  9. Leetcode: plus one

    June 22, 2015 Given a number represented as an array of digits, plus one to the number. Leetcode: pl ...

  10. 分页ajax+springmvc的简单实现

    页面部分源码: <li class="paginItem"><a href="javascript:getNewsList(2);">2 ...