一、背景介绍
Windows可以用Xshell进行远程服务器文件传输,Mac上没有Xshell,可以通过iTerm2实现rz/sz功能。
二、步骤
- 安装lrzsz
brew install lrzsz
- 下载iterm2-zmodem
git clone https://github.com/aikuyun/iterm2-zmodem.git
- 复制iterm2-send-zmodem.sh 和iterm2-recv-zmodem.sh两个脚本到/usr/local/bin
sudo cp iterm2-* /usr/local/bin
- 设置脚本权限
sudo chmod 777 /usr/local/bin/iterm2-*
- 设置iterm2的Trigger功能,Profiles->->Edit Profiles->Advanced中的Tirgger,添加两条记录,分别如下:
1.第一条
Regular expression: rz waiting to receive.\*\*B0100
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-send-zmodem.sh
Instant: checked
2.第二条
Regular expression: \*\*B00000000000000
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-recv-zmodem.sh
Instant: checked
- 服务器安装lrzsz
yum -y install lrzsz
三、rz、sz的使用
- 文件上传
# 登录远程服务器,输入rz,弹窗选择文件
rz
- 文件下载
# 登录远程服务器,输入sz+文件名称,选择目录
sz
四、QA & Reference
- /usr/local/bin/sz: No such file or directory
# 查看sz安装路径
which sz
# 替换脚本中sz路径为实际值,比如/opt/homebrew/bin/sz
vim /usr/local/bin/iterm2-send-zmodem.sh
- iTerm2 official:
https://iterm2.com/documentation.html - iTerm2-zmodem download:
https://github.com/aikuyun/iterm2-zmodem