lrzsz ( rz / sz ) 是非常方便好用的 Linux 文件传输工具,但是几十年没更新了。
trz -d 命令上传目录,tsz -d xxx 命令下载 xxx 目录。trzsz ssh x.x.x.x 登录即可。ctrl + c 优雅中止。


sudo python3 -m pip install --upgrade trzszsudo python2 -m pip install --upgrade trzszbrew update
brew install trzszsudo npm install -g trzsz 没有 sudo 权限也可以安装,只要将安装路径 ( 可能是 ~/.local/bin ) 添加到 PATH 环境变量中即可。
1.19.0 以上的版本即可。1.7.3 以上的版本,并且启动时加上 -t enableTrzsz=true,非 localhost 要用 https。trzsz。trz 命令可以不带任何参数,将上传文件到当前目录。也可以带一个目录参数,指定上传到哪个目录。
trz /tmp/tsz 可以带一个或多个文件名(可使用相对路径或绝对路径,也可使用通配符),将下载指定的文件。
tsz file1 file2 file3trz -q 或 tsz -q xxx ( 加上 -q 选项 ),则在传输文件时不显示进度条。
trz -y 或 tsz -y xxx ( 加上 -y 选项 ),如果存在相同文件名的文件就直接覆盖。
trz -b 或 tsz -b xxx ( 加上 -b 选项 ),二进制传输模式,对于压缩包、图片、影音等较快。
二进制模式时,控制字符可能会导致失败,trz -eb 或 tsz -eb xxx ( 加上 -e 选项 ) 转义所有已知的控制字符。
trz -d 或 tsz -d xxx ( 加上 -d 选项 ),则可以上传或下载指定文件夹和文件。
trz -B 20m 或 tsz -B 2M xxx 等,设置最大缓冲区上限 ( 默认 10M )。会自动根据网速选择合适的缓冲区大小,但不会超过此上限。
trz -t 30 或 tsz -t 30 xxx 等,设置超时秒数 ( 默认 20 秒 )。在超时时间内,如果无法传完一个缓冲区大小的数据则会报错并退出。设置为 0 或负数,则永不超时。
tmux 不是运行在远程服务器上,而是运行在本地电脑上,或者运行在中间的跳板机上。tmux -CC 与 iTerm2 集成,请参考 iTerm2 与 tmux -CC 集成。alias ssh="trzsz ssh" 可以方便使用。trzsz 挂住不能动了:control + c 可以停止服务器上的 trz 或 tsz 进程。command + option + shift + r 可以停止 iTerm2 Coprocesses。trz -b 二进制上传失败,并且登录远程服务器时使用了 telnet 或 docker exec:trz -eb。trz -b 或 tsz -b 二进制传输失败,并且登录远程服务器时使用了 expect:expect 脚本前设置环境变量 export LC_CTYPE=C,例如:#!/bin/sh
export LC_CTYPE=C
expect -c '
spawn ssh xxx
expect "xxx: "
send "xxx\n"
interact
'原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。