rz,sz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具。
使用前提:
首先linux上传文件命令rz,你的Linux端(CentOS,Ubuntu)须要安装rz/sz命令,也就是lszrz包。
其次,windows端须要支持ZModem的telnet/ssh顾客端(Xshell,SecureCRT支持,似乎putty不支持),SecureCRT就可以用SecureCRT登录到Unix/Linux主机(telnet或ssh均可)
运行命令rz,即是接收文件,xshell都会弹出文件选择对话框,选好文件以后关掉对话框,文件都会上传到linux里的当前目录。假如要上传文件,直接用滑鼠点住文件往X-shell上面一拖即是
运行命令szfile就是发文件到windows上(保存的目录是可以配置)比ftp命令便捷多了,但是服务器不用再开FTP服务了
在Linux上安装lrzsz
单单是SSH顾客端软件支持以上文件传输合同(ASCII,Xmodem,Ymodem,Zmodem)还不行,我们的Linux服务器上也得安装相应的软件,以支持那些文件传输合同才行。在Linux上,lrzsz就是完成此任务的,lrzsz就是一个支持Zmodem传输合同的工具。我们通过sz/rz两个命令linux上传文件命令rzlinux系统日志,分别发送/接收文件。假如我们的系统中没有安装lrzsz这个包,都会报错,安装即可解决。
[root@localhost~]#rz -bash:rz:commandnotfound ##ForCentOS/RHEL [root@localhost~]#yum-yinstalllrzsz ##ForUbuntu #sudoapt-getinstalllrzsz
理解记忆
其中,对于sz和rz的理解与记忆我用了如下的方式(好多时侯容易搞混):
sz中的s意为send(发送),告诉顾客端,我(服务器)要发送文件sendtocilent,就等同于顾客端在下载。
rz中的r意为received(接收),告诉顾客端,我(服务器)要接收文件receivedbycilent,就等同于顾客端在上传。
使用示例
rz上传命令,假如早已存在文件了,这么默认不会执行上传,要-y覆盖才可以
[root@szxjdw01-a-pro-14~]#cd/data/backup/war/ [root@szxjdw01-a-pro-14war]#ll total308888 -rw-r--r--1rootroot79681963Aug414:59test.tar.gz [root@testwar]#rz rzwaitingtoreceive. Startingzmodemtransfer.PressCtrl+Ctocancel. Transferringjdwin-ucenter-rpc-service-assembly.tar.gz... jdwin-ucenter-rpc-service-assembly.tar.gzwasskipped [root@testwar]#rz-y rzwaitingtoreceive. Startingzmodemtransfer.PressCtrl+Ctocancel. Transferringjdwin-ucenter-rpc-service-assembly.tar.gz... 100%77814KB855KB/sec00:01:310Errors [root@testwar]#ll total308888 -rw-r--r--1rootroot79681952Aug415:53test.tar.gz
缺点
使用lszrz十分便捷,然而有一点不足之处:难以传输小于4G的文件。
那肿么办呢?可以使用Filezilla查看系统版本linux,SecureFX这种FTP工具来代替了。