linux shell rz和sz是终端下常用的文件传输命令,rz和sz通过shell被调用,其中rz用于从启用终端的系统上传文件到目标系统(终端登录的目标系统), 这里不过多介绍这些命令,只是记录一个使用rz过程中碰到的小问题。

 

       本人在rz命令(不带任何选项参数)上传一个可执行文件exe时,出现了error,导致终端挂死在rz命令中,因为之前没有碰到过这种情况,其他文件都可以正常上传。所以想到是不是rz在面对这个文件exe时存在问题,所以man rz了一下,发现-e选项,描述如下:

 

-e, --escape
              Force sender to escape all control characters; normally XON, XOFF, DLE,
CR-@-CR, and Ctrl-X are escaped.

 

大致意思就是,-e选项强制对rz的控制字符进行转义,就想C中表示真正的反斜杠 '/',需要 '//'进行转义一样。

 

就想到是不是exe文件存在rz程序的控制字符导致上传出错,所以加上-e选项,问题解决,因此可以确定是由于文件中存在rz的控制字符导致了rz上传错误,所以为了防止rz出现上述问题,建议在用rz命令时都加上-e选项。

注意:单独用rz会有两个问题:上传中断、上传文件变化(md5不同),解决办法是上传是用rz -be,并且去掉弹出的对话框中“Upload files as ASCII”前的勾选。
-a, –ascii
-b, –binary 用binary的方式上传下载,不解释字符为ascii
-e, –escape 强制escape 所有控制字符,比如Ctrl+x,DEL等
rar,gif等文件文件采用 -b 用binary的方式上传。
文件比较大而上传出错的话,采用参数 -e
如果用不带参数的rz命令上传大文件时,常常上传一半就断掉了,很可能是rz以为上传的流中包含某些特殊控制字符,造成rz提前退出。
综上,请使用 rz  -be


转载:http://blog.csdn.net/jianhong1990/article/details/39643691

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐