[转]Ubuntu Shell下使用sz/rz命令传输文件

作者: dslztx
链接: https://dslztx.github.io/blog/2017/02/16/Ubuntu-Shell下使用sz-rz命令传输文件/

一、环境配置

  • 安装lrzsz软件包

sz和rz命令在lrzsz软件包中,通过以下命令进行安装:

sudo apt-get install lrzsz
  • 安装GNU screen软件包

在Windows操作系统环境下的Xshell等程序中执行“sz/rz”命令,会自动弹出一个图形界面窗口(是对ZMODEM协议信号捕获事件的响应),用于选取“从服务器接收文件传输目的路径/待发送到服务器的文件路径”。
而在Ubuntu Shell下,可通过GNU screen软件包下的screen命令环境捕获ZMODEM协议信号,从而实现选取“从服务器接收文件传输目的路径/待发送到服务器的文件路径”。

二、实际操作

  • 发送文件到服务器
    • 打开一个Shell
    • 执行screen命令,进入screen命令环境
    • 按下Ctrl+a组合键,然后再输入:zmodem catch命令,设置screen命令环境捕获ZMODEM协议信号
    • 在以上screen命令环境下与服务器建立SSH连接
    • 执行rz命令,ZMODEM协议信号被screen命令环境捕获,出现如图1所示待补全命令,待补全部分为“待发送到服务器的文件路径”
    • 输入“待发送到服务器的文件路径”,成功发送文件到服务器当前所处目录下

图一:https://i2.wp.com/onecoder.site/wp-content/uploads/2018/05/20170216-0-1.png?w=680&ssl=1

  • 从服务器接收文件
    • 打开一个Shell
    • 执行screen命令,进入screen命令环境
    • 按下Ctrl+a组合键,然后再输入:zmodem catch命令,设置screen命令环境捕获ZMODEM协议信号
    • 在以上screen命令环境下与服务器建立SSH连接
    • 执行sz 文件路径命令,ZMODEM协议信号被screen命令环境捕获,出现如图2所示可直接执行命令
    • 图2所示命令执行后,服务器的文件被传输到本地,自动置于用户主目录下

图2:https://i1.wp.com/onecoder.site/wp-content/uploads/2018/05/20170216-0-2.png?w=680&ssl=1

三、其他

在screen命令环境下,按下Ctrl+a组合键,然后再输入:encoding enc命令,可以设定环境编码格式。

参考文献:
[1]http://uhle.blog.163.com/blog/static/194117144201121044756789/
[2]http://adammonsen.com/post/256
[3]https://www.gnu.org/software/screen/manual/screen.html
[4]https://www.gnu.org/software/screen/manual/screen.html#Character-Processing

0

一个有关“[转]Ubuntu Shell下使用sz/rz命令传输文件”的想法

  1. 公司测试系统使用VPN加堡垒机才能访问,文件传输很麻烦。家里的电脑是Ubuntu,无法传输文件,刚好找到了这篇文章作者的博客,看到了这篇文章。亲身实践,确实可行。

    0

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.