前言
最近换了MacOS以后各种不方便,安装SZ RZ命令也麻烦了许多,还有好多WinOS下面的好用工具没有办法用,各种不习惯但是又不得不用。这篇帖子就是集合了笔者在安装这俩命令时候遇到的坑以及处理办法,这篇帖子的前提是brew已经安装好了。
安装lrzsz
执行brew install lrzsz
命令安装必备插件。
如果中途有报错类似于下方的,说明你的环境中缺少插件:
Error: Failure while executing; tar --extract --no-same-owner --file /Users/wangchuangyan/Library/Caches/Homebrew/downloads/01840f175b09e7eb3d4ca7f11492bb1bee74fa7569a41a884c7ffb3418e11a02--[插件名字]-[版本号]catalina.bottle.tar.gz --directory /private/tmp/d0708-6134-w2f3oo exited with 1. Here’s the output:tar: Error opening archive: Failed to open ‘/Users/xxx/Library/Caches/Homebrew/downloads/01840f175b09e7eb3d4ca7f11492bb1bee74fa7569a41a884c7ffb3418e11a02--[插件名字]-[版本号].catalina.bottle.tar.gz’
直接执行brew install 插件名字
安装对应的插件即可。笔者不好还原这个报错,知乎上找个图例标红贴在这里:
下载iTerm2
百度iTerm2,一般第一个就是【官网】也贴在这里,下载一个稳定版本的就行,就是下面标红的Stable版本。
下载以后是一个iTerm2-xxx.zip
文件,解压双击iTerm2安装到MacOS里。
下载脚本
想要命令执行成功必须要有iterm2-send-zmodem.sh
和iterm2-recv-zmodem.sh
两个脚本,可以从【csdn的镜像库】直接下载,然后把这两个脚本复制到/usr/local/bin/
目录下:
sudo cp iterm2-send-zmodem.sh /usr/local/bin/sudo cp iterm2-recv-zmodem.sh /usr/local/bin/
然后到/usr/local/bin/
目录下赋权:sudo chmod 777 iterm2-*
。
配置iTerm2
以上都准备好了,就可以配置了。Iterm2的配置路径如下
Profiles->Open Profiles->Default->Edit Profiles->Advanced->Tirgger->Edit或者iTerm2->Preferences-> Profiles->Advanced->Tirgger->Edit
进入以后按照如下配置你的Trigger,注意脚本对应的行:
如图:
修改脚本
基本上到此就配置完了,大多数网上的帖子止步于此,但是如果直接执行命令估计会有如下报错:
/usr/local/bin/iterm2-recv-zmodem.sh: line 20: /usr/local/bin/rz: No such file or directory
当你用mkdir把rz,sz创建出来的时候,在执行命令又报错:
/usr/local/bin/iterm2-recv-zmodem.sh: line 20: /usr/local/bin/rz: is a directory
这俩目不着头脑的报错提示让人头大,多方查阅发现之所以出现这样的原因是,脚本iterm2-send-zmodem.sh
和iterm2-recv-zmodem.sh
里的内容有问题。因为上面说过这个要依赖lrzsz
插件,而lrzsz
插件装在哪里此时你并不清楚,系统更不知道,所以只能找send
和recv
脚本里默认了的/usr/local/bin/rz
或者/usr/local/bin/sz
,因此无论如何你都跑不通。所以首先要用brew list lrzsz
命令看看你的lrzsz插件在哪里:
我们接下来要做的就是把上图中红框里面的路径去iterm2-send-zmodem.sh
和iterm2-recv-zmodem.sh
脚本里替换掉(下图),然后就可以愉快的使用sz和rz两个命令了。
Send:
Receive: