对于一个编程菜鸟来说看到网上 sz\rz 的安装一堆的内容和步骤,头都大了,工作需要,还是要克服这个困难,安装成功后发现这个命令真是好用,在装的过程中记录了详细过程,希望我写的足够清晰,能帮到大家快速上手,快速理解,节省时间成本。


为什么不用scp命令?

scp 可以在 2个 linux 主机间复制文件

scp -r local_folder remote_username@remote_ip:remote_folder
scp -r local_folder remote_ip:remote_folder 

第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;

远程文件传输的工具有很多,例如rz、sz;scp;ftp等。但是当服务器需要通过跳板机访问,不能使用scp,ftp中转的机器也难协调,这时候就需要sz、rz来传输,sz、rz用起来十分方便。


sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。相对应的从本地上传文件到Linux服务器,可以使用rz命令。


下面说说怎么安装,尽我所能写的详细。

一、下载并安装iTerm2

http://www.iterm2.com/#/section/downloads
点击链接,下载安装

二、安装homebrew

安装命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

卸载命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
三、安装lrzsz

1.这里有个试错。

sudo brew install lrzsz 安装不了lrzsz

报错信息:

Error: Running Homebrew as root is extremely dangerous and no longer supported.
As Homebrew does not drop privileges on installation you would be giving all
build scripts full access to your system.

brew install lrzsz 安装成功

成功信息
这里写图片描述

2. 安装脚本到mac指定目录,地址在: https://github.com/mmastrac/iterm2-zmode 点击链接下载到本地
3.保存 iterm2-send-zmodem.shiterm2-recv-zmodem.sh 到mac的 /usr/local/bin/ 路径下,执行命令:

cp /Users/taorui02/Downloads/iterm2-zmodem-master/iterm2-recv-zmodem.sh /usr/local/bin/
cp /Users/taorui02/Downloads/iterm2-zmodem-master/iterm2-send-zmodem.sh /usr/local/bin/

4.进入安装目录执行命令:cd /usr/local/bin
5.添加脚本可执行权限,执行命令:

chmod +x iterm2-send-zmodem.sh 
chmod +x iterm2-recv-zmodem.sh  
四、iterm2 添加 triggers

添加步骤:command+“,” 组合键打开Preferences面板->Profiles选项卡->Advanced->Triggers(点击Edit即可)

添加内容:

Regular expression: \*\*B0100
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-send-zmodem.sh 

Regular expression: \*\*B00000000000000
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-recv-zmodem.sh

按照下图把六项内容填上就ok啦
像这样:
这里写图片描述

五、重启iterm2
六、登陆服务器,在命令行输入:
sz filename  # 发送文件到本地
rz  # 接受本地文件
rz -be  # 上传大文件(比如压缩文件)

输入命令后弹出本地访达的对话框,选择需要传输的文件,注意,filename是文件名,不能是文件夹,文件夹要压缩后操作。

缺点

无法传输大于 4G 的文件

Logo

更多推荐