我们经常使用 sz/rz 命令进行文件的上传下载,非常方便。但是在 Mac 下不能直接使用,需要进行配置才能使用
常理来说安装了lrzsz 即可,但我们每个人总能遇到各种在常理之外的问题。
常规安装步骤只有两步
1.安装 Homebrew(如果尚未安装)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
2.安装 lrzsz
brew install lrzsz
3.集成 iTerm2-zmodem 支持
起始
在 iterm2官方网站里最底下有示例,使用triggers触发器支持zmodem功能
官方
https://iterm2.com/documentation-triggers.html
github集成示例
https://github.com/RobberPhex/iTerm2-zmodem
下载支持
进入到 /usr/local/bin 目录下,下载两个脚本文件
cd /usr/local/bin
sudo wget https://raw.githubusercontent.com/robberphex/iTerm2-zmodem/refs/heads/main/iterm2-recv-zmodem.sh
sudo wget https://raw.githubusercontent.com/robberphex/iTerm2-zmodem/refs/heads/main/iterm2-send-zmodem.sh
sudo chmod 777 /usr/local/bin/iterm2-*
配置
点击 iTerm2 的设置界面 Perference -> Profiles -> Default -> Advanced -> Triggers 的 Edit 按钮,弹框后点击左下角+号
依次录入以下配置
Regular expression: rz waiting to receive.\*\*B0100
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-send-zmodem.sh
Instant: checked
Regular expression: \*\*B00000000000000
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-recv-zmodem.sh
Instant: checked
注意事项
a. apple 中比如M1/M2/M3/... 下brew安装 lrzsz 的位置是在 /opt/homebrew/
如不确定可通过 which brew
来定位目录, 通常会指向 /opt/homebrew/bin/brew
b. 当你成功安装 lrzsz 时,在你 /opt/homebrew/bin
目录下当有 rz sz 的脚本软连接
rz -> ../Cellar/lrzsz/0.12.20_1/bin/rz
sz -> ../Cellar/lrzsz/0.12.20_1/bin/sz
同样在一些 intel mac 上 会处于该目录位置 /usr/local/bin
, 如指向的该位置同样需要软链关联,
可以通过
ln -s /opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/rz /usr/local/bin/rz
ln -s /opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/sz /usr/local/bin/sz
设置ln软连接修复问题
使用 brew info lrzsz
可查看安装目录,
c. 注意 iterm2 触发器参数的配置,如有错漏会失效卡断,请参考官方示例配置。
其他
卸载 lrzsz 软件
brew uninstall lrzsz
清理缓存
brew cleanup
排查问题加参数 -v
sz -v <file>
rz -v <file>