我们在用SecureCRT客户端做开发的时候,往往需要上传和下载文件到本地或服务器上,例如:从线上数据库导数据的时候,数据文件无法下载到本地,以前的解决办法是借助一台外网服务器做中转,今天偶尔发现在服务器上安装了rz/sz软件包,
以后就可以通过这两个命令来实现上传和下载文件,不用借助外网服务器.
Rz上传文件:
在命令行下输入rz 回车.即可弹出一个对话框,让你选择上传的文件,点击确定即可.文件上传到服务器的当前目录
Sz下载文件:
同样在命令行下输入sz yourdownloadfile 回车后即可下载,文件会被下载到secureId的安装目录中的download目录中.
注:本地上传和下载的目录是可以更改的,options->session options->xmodem/zmodem 中更改路径.各版本有所不同.
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选项。