10

为iTerm配置Zmodem文件传输(支持跳板机)

 3 years ago
source link: https://arminli.com/iterm-zmodem/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Armin's Blog

为iTerm配置Zmodem文件传输(支持跳板机)

October 22, 2016

Zmodem

Zmodem 是一种支持错误校验的文件传输协议,在它之前还有 Xmodem、Ymodem。

其中包括两个命令(都是在服务器上运行):

  • sz:将文件发送到本地机器
  • rz:从本地选择文件上传到服务器

sz/rz 适合速度大约 10k/s 左右,适合传输小文件,还会弹出可视化窗口选择文件,很方便。

安装 Zmodem

brew install lrzsz

下载脚本并赋予可执行权限:

wget https://raw.githubusercontent.com/mmastrac/iterm2-zmodem/master/iterm2-send-zmodem.sh -P /usr/local/bin/
wget https://raw.githubusercontent.com/mmastrac/iterm2-zmodem/master/iterm2-recv-zmodem.sh -P /usr/local/bin/
chmod +x /usr/local/bin/iterm2-send-zmodem.sh
chmod +x /usr/local/bin/iterm2-recv-zmodem.sh

配置 iTerm

打开需要配置的 Profile -> Advanced -> Triggers -> edit,按照下面格式添加两行:

Regular expression: rz waiting to receive.\*\*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

服务器也需要安装 lrzsz。

9cd77f2ejw1f90vsyd9rdj20na0audgz.jpg

很多公司都使用跳板机登录开发环境,这种情况下我们需要使用 zssh 来登录跳板机,然后 ssh 到开发机后才能使用 sz 命令。

安装 zssh:

brew install zssh

登录跳板机:

zssh xxx@xxx

登录开发机:

ssh xxx@zzz

sz filename # 发送filename
# 按Ctrl+@ 进入本地环境
zssh > pwd # 本地位置
zssh > rz # 接收

Profile picture

Written by Armin Li , a venture capitalist. [Weibo] [Subscribe]


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK