trzsz支持文件拖动到终端进行上传,类似lrzsz

考虑到 LapTop -> Host 1 -> Host 2 -> Docker -> TMUX,使用scp或sftp命令不方便;使用rz和sz命令就会方便很多,但是却又与 TMUX 不兼容(备注:Tmux是一个终端复用工具,允许用户在一个终端窗口中同时运行多个终端会话或者程序。它提供了会话(session)、窗口(window)和面板(panel)等多种功能,可以帮助用户更高效地管理终端环境。)

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/

猜你喜欢

转载自blog.csdn.net/JineD/article/details/134519636