共计 1342 个字符,预计需要花费 4 分钟才能阅读完成。
安装brew
brew是Mac OS上的一个包管理工具,可以使用它来安装接下来要使用到的iTerm,wget等工具。
Mac默认安装了ruby,打开终端执行如下命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrew安装成功后,会自动创建目录 /usr/local/Cellar 来存放Homebrew安装的程序。 这时就可以在命令行状态下面就可以使用 brew 命令了.
安装iTerm2
iTerm是一个Mac下的终端工具,非常好用的命令行工具。Mac自带的终端是不支持lrzsz的,需要先下载支持它的iterms。
从官网下载,在本地解压,并将文件拖入Applications,安装完成。
安装lrzsz
lrzsz是一款在linux里可代替ftp上传和下载的程序。通过下载它来使用rz,sz。
brew install lrzsz
安装wget
下载lrzsz之后,需要使用wget
下载iterm2-zmodem。Mac默认不安装wget,可以通过brew安装。
brew install wget
下载iterm2-zmodem
在iTerm2中使用Zmodem传输文件。
cd /usr/local/bin
wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-send-zmodem.sh
wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-recv-zmodem.sh
chmod 777 /usr/local/bin/iterm2-*
如果命令需要权限,尝试在命令前面加上sudo
。
添加trigger
打开一个iTerm终端,点击菜单的Profiles,选择某个profile之后然后继续选择advanced → triggers,添加triggers。
Regular expression | Action | Action |
---|---|---|
**B0100 | Run Silent Coprocess | /usr/local/bin/iterm2-send-zmodem.sh |
**B00000000000000 | Run Silent Coprocess | /usr/local/bin/iterm2-recv-zmodem.sh |
网上的教程都是在这类似的,但是楼主安装完成重启Item2的时候依然无法使用sz和rz,虽然弹出窗口了但是传输还是失败。
后来在这个github上发现了解决问题的办法,附上github链接https://github.com/mmastrac/iterm2-zmodem/issues/19#issuecomment-315019833
博主日常登录服务器会使用profile设置expext脚本实现自动登录,关键点就在这lszrz正好与这个expect脚本冲突,于是就挂了。。。
所以使用类似的以下expect脚本都要停止使用
#!/usr/bin/expect -f
使用正常的ssh链接服务器之后就可以开心的sz和rz了,这个问题还是折腾了好几个小时,还我时间。