Mac远程服务器文件上传rz和sz的安装使用
背景
在开发过程中会遇到,需要把本地文件上传到远程服务器的情况;正常情况下可以使用scp实现文件上传;但是大部分公司内部线上服务器都是无法直接登录的,都需要通过跳板机登录,这时scp(ssh)就无法直接连接服务器了,这就需要用到rz和sz文件上传命令,可以直接跳过跳板机,连接本地和远程服务器。
一下以MAC讲解安装步骤:
安装步骤
-
安装Homebrew(已安装就无需再次安装)
ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
检查是否安装成功
brew -v
brew是Mac OS上的一个包管理工具,可以使用它来安装接下来要使用到的iTerm,wget等工具
-
安装lrzsz命令
lrzsz是一款在linux里可代替ftp上传和下载的程序。通过下载它来使用rz,sz
brew install lrzsz
-
安装iTerm2
iTerm2是一个Mac下的终端工具,非常好用的命令行工具。Mac自带的终端是不支持lrzsz的,需要先下载支持它的iterms。
下载到本地后直接解压安装,并将文件拖入到Applications
-
安装wget(如果本地已安装 则无需再次安装)
brew install wget
-
下载并安装automatic zmoderm for iTerm2
如果拥有root不需要sudo
cd /usr/local/bin
(sudo) wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-send-zmodem.sh
(sudo) wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-recv-zmodem.sh
改变脚本权限
(sudo) chmod 777 /usr/local/bin/iterm2-*
-
配置iTerm2
打来一个iTerm终端,进行如下操作
Profiles—>open Profiles—>Edit Profiles—>Advanced—>Edit 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 -
使用
先通过跳板登录远程服务器
ssh ***@relay.**corp.com
登录成功之后,直接在终端输入rz 回车 会弹出文件选择窗口,直接选中本地文件
等待文件上传完成