rz,sz是便是Linux/Unix同Windows進行ZModem文件傳輸的命令行工具。
使用前提:
首先,你的Linux端(CentOS, Ubuntu)需要安裝rz/sz命令,也就是 lszrz 包。
其次,windows端需要支持ZModem的telnet/ssh客戶端(Xshell,SecureCRT支持,好像putty不支持),SecureCRT就可以用SecureCRT登陸到Unix/Linux主機(telnet或ssh均可)
運行命令rz,即是接收文件,xshell就會彈出文件選擇對話框,選好文件之后關閉對話框,文件就會上傳到linux里的當前目錄。如果要上傳文件,直接用鼠標點住文件往X-shell里面一拖即是
運行命令 sz file 就是發文件到windows上(保存的目錄是可以配置) 比ftp命令方便多了,而且服務器不用再開FTP服務了
在Linux上安裝lrzsz
單單是SSH客戶端軟件支持以上文件傳輸協議(ASCII,Xmodem,Ymodem,Zmodem)還不行,我們的Linux服務器上也得安裝相應的軟件,以支持這些文件傳輸協議才行。在Linux上,lrzsz就是完成此任務的,lrzsz就是一個支持 Zmodem 傳輸協議的工具。我們通過sz/rz兩個命令,分別發送/接收文件。如果我們的系統中沒有安裝lrzsz這個包,就會報錯,安裝即可解決。
[root@localhost ~]# rz-bash: rz: command not found## For CentOS/RHEL[root@localhost ~]# yum -y install lrzsz ## For Ubuntu# sudo apt-get install lrzsz
理解記憶
其中,對于sz和rz的理解與記憶我用了如下的方法(很多時候容易搞混):
sz中的s意為send(發送),告訴客戶端,我(服務器)要發送文件 send to cilent,就等同于客戶端在下載。
rz中的r意為received(接收),告訴客戶端,我(服務器)要接收文件 received by cilent,就等同于客戶端在上傳。
使用示例
rz上傳命令,如果已經存在文件了,那么默認不會執行上傳,要-y覆蓋才可以
[root@szxjdw01-a-pro-14 ~]# cd /data/backup/war/[root@szxjdw01-a-pro-14 war]# lltotal 308888-rw-r--r-- 1 root root 79681963 Aug 4 14:59 test.tar.gz[root@test war]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring jdwin-ucenter-rpc-service-assembly.tar.gz...jdwin-ucenter-rpc-service-assembly.tar.gz was skipped [root@test war]# rz -yrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring jdwin-ucenter-rpc-service-assembly.tar.gz... 100% 77814 KB 855 KB/sec 00:01:31 0 Errors [root@test war]# lltotal 308888-rw-r--r-- 1 root root 79681952 Aug 4 15:53 test.tar.gz
缺點
使用lszrz非常方便,但是有一點不足之處: 無法傳輸大于 4G 的文件。
那腫么辦呢? 可以使用Filezilla, SecureFX 這些FTP工具來替代了。
新聞熱點
疑難解答