这款文件传输工具的替代品,牛逼了!
共 3780字,需浏览 8分钟
·
2023-03-29 12:33
某种场景下,考虑到 LapTop -> Host 1 -> Host 2 -> Docker -> TMUX,使用scp
或sftp
命令不方便。使用rz
和sz
命令就会方便很多,但是却又与 TMUX 不兼容。
那么,今天推荐给大家的这款神器,绝对香。
trzsz(trz / tsz)是一个基于 Python 编程语言开发且兼容 TMUX 的文件传输工具,类似于 lrzsz(rz / sz),并且 trzsz 有进度条、支持目录传输和文件拖动上传、支持 iTerm2、Tabby、Electerm、TTYD 终端。
trzsz-go 是基于 Go 语言实现的的 trzsz,它不需要依赖终端的支持,即可上传和下载文件。
trzsz-js 支持 Windows 本地的 cmd、PowerShell 等;支持目录trz -d
上传和tsz -d xxx
下载;支持拖动文件及目录直接上传到服务器。
安装 trzsz
Ubuntu 用 apt 安装:
# sudo apt update && sudo apt install software-properties-common
# sudo add-apt-repository ppa:trzsz/ppa && sudo apt update
# sudo apt install trzsz
Debian 用 apt 安装:
# sudo apt install curl gpg
# curl -s 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x7074ce75da7cc691c1ae1a7c7e51d1ad956055ca' \
| gpg --dearmor -o /usr/share/keyrings/trzsz.gpg
# echo 'deb [signed-by=/usr/share/keyrings/trzsz.gpg] https://ppa.launchpadcontent.net/trzsz/ppa/ubuntu jammy main' \
| sudo tee /etc/apt/sources.list.d/trzsz.list
# sudo apt update
# sudo apt install trzsz
Linux 用 yum 安装:
echo '[trzsz]
name=Trzsz Repo
baseurl=https://yum.fury.io/trzsz/
enabled=1
gpgcheck=0' | sudo tee /etc/yum.repos.d/trzsz.repo
sudo yum install trzsz
Mac 用 homebrew 安装:
brew update
brew install trzsz-go
Windows 用 scoop 安装:
scoop bucket add extras
scoop install trzsz
或从 GitHub 下载源代码安装:
git clone https://github.com/trzsz/trzsz-go.git
cd trzsz-go
make
sudo make install
使用 trzsz
trz 将文件上传到远程服务器的用法:
trz [-h] [-v] [-q] [-y] [-b] [-e] [-d] [-B N] [-t N] [path]
-
-h:帮助信息并退出
-
-v:显示版本并退出
-
-q:传输文件时,隐藏进度条
-
-y:如存在相同的文件名,则直接覆盖现有文件
-
-b:二进制传输模式,对于压缩包、图片、影音传输会较快
-
-e:转义所有已知的控制字符
-
-d:上传、下载指定的文件或文件夹
-
-b:设置最大缓冲区上限,会自动根据网速选择合适的缓冲区大小,但不会超过此上限。(默认值:10M)
-
-t:设置超时秒数(默认值:20秒)在超时时间内,如无法传完一个缓冲区大小的数据,则会报错并退出。设置为 0 或负数时,则永不超时。
-
path:保存文件的路径。(默认为:当前目录)
trz 不带任何参数,则将所要上传的文件到当前目录下,也可以指定所要上传到的目录。
# trz
# trz /opt
在本地使用trzsz ssh IP地址
登录服务器,或使用trzsz -d ssh IP地址
登录,即可支持拖动文件和文件夹上传。
tsz 从远程服务器下载文件的用法:
tsz [-h] [-v] [-q] [-y] [-b] [-e] [-d] [-B N] [-t N] file [file ...]
-
file:要下载的文件
tsz 可以下载一个或多个文件,可使用相对路径或绝对路径,也可使用通配符,下载指定文件。
# tsz file1 file2 file3
上述,大家可根据trz
和tsz
上传下载的方式结合实际场景进行运用,体验一下rz
和sz
的替代品。
除此之外,trzsz 中文文档还提供了一些常见异常问题处理方法。
References
trzsz:https://github.com/trzsz/trzsz
trzsz-go:https://github.com/trzsz/trzsz-go
trzsz-js:https://github.com/trzsz/trzsz.js
trzsz 中文文档:https://trzsz.github.io/cn/
推荐阅读:
太强了!这款命令行工具可以在 Linux 文件目录快速自动跳转