go install github.com/trzsz/trzsz-go/cmd/...@latest
go installgithub.com/trzsz/trzsz-go/cmd/trz@latest
goinstallgithub.com/trzsz/trzsz-go/cmd/tsz@latest
goinstallgithub.com/trzsz/trzsz-go/cmd/trzsz@latest
安装后,trzsz程序一般位于~/go/bin/目录下( Windows 一般在C:\Users\your_name\go\bin\)。
trzsz v1.1.5 传目录比 scp -r 还要快了
scp -r传输含有大量小文件的文件夹( 例如 .git )时,速度超级慢,一般都要先 tar 打包一下,传输完再 tar 解开。trzsz ( trz / tsz )v1.1.5 新版本将“tar 打包和解开”内置了,在用户无感的情况下大大提高了传输速度。安装方法
Ubuntu 可用 apt 安装
sudo apt install trzszDebian 可用 apt 安装
sudo apt install trzszLinux 可用 yum 安装
sudo yum install trzsz国内推荐使用 wlnmp 源,安装 trzsz 只需要添加 wlnmp 源( 配置 epel 源不是必须的 ),以 CentOS 为例:
也可使用 gemfury 源( 只要网络通,所有操作系统通用 )
ArchLinux 可用 yay 安装
yay -S trzszMacOS 可用 homebrew 安装
brew install trzsz-goWindows 可用 scoop / winget / choco 安装
scoop install trzsz/winget install trzsz/choco install trzsz用 Go 直接安装( 要求 go 1.20 以上 )
go install github.com/trzsz/trzsz-go/cmd/...@latest安装后,
trzsz程序一般位于~/go/bin/目录下( Windows 一般在C:\Users\your_name\go\bin\)。可从 Releases 中直接下载适用的版本
或者用 Go 编译( 要求 go 1.20 以上 )使用方法
在本地电脑使用
在命令前添加
trzsz,就可以支持 trzsz (trz /tsz) 上传和下载了,如:在命令前添加
trzsz --dragfile,就可以启用拖拽上传功能,如:在跳板机上使用
如果在跳板机上使用
tmux,则需要再使用trzsz --relay ssh登录远程服务器,如:在服务器上使用
与 lrzsz (rz /sz) 类似,使用
trz命令上传文件,使用tsz /path/to/file命令下载文件。有关
trzsz更详细的文档,请查看 https://trzsz.github.io/cn/。使用建议
为了使用方便,可以设置
alias,例如alias ssh="trzsz ssh",又或者alias ssh="trzsz -d ssh"支持拖文件上传。如果在本地电脑使用
tmux,先不带trzsz运行tmux,然后再使用trzsz ssh登录远程服务器。可配置项
trzsz使用的配置文件是~/.trzsz.conf( Windows 是C:\Users\your_name\.trzsz.conf)。注意路径必须包含/结尾,如:如果
DefaultUploadPath不为空,上传选择文件时会默认打开此目录。如果
DefaultDownloadPath不为空,下载文件时会自动下载到此目录( 不需要再弹窗选择路径 )。常见问题
如果 MSYS2 或 Git Bash 遇到错误
The handle is invalid。trzsz前面加上winpty即可,如winpty trzsz ssh x.x.x.x这样登录服务器。Git Bash已默认安装有winpty,MSYS2需要手工安装pacman -S winpty。在 MSYS2 和 Cygwin 等,不支持直接使用
/usr/bin/ssh那个ssh,可能会传输失败。需要使用 Windows 自带的 OpenSSH。MSYS2中用法winpty trzsz /c/Windows/System32/OpenSSH/ssh.exe x.x.x.x。Cygwin中用法trzsz "C:\Windows\System32\OpenSSH\ssh.exe" x.x.x.x。tssh等同于trzsz ssh。拖文件或目录到终端后,没有自动上传?
ssh登录时有没有加上--dragfile选项,如trzsz --dragfile ssh x.x.x.x。trz应在某个PATH路径下。管理员三个字,以管理员运行时可能会由于 UAC 设置的原因导致拖不了文件。粘贴文件路径时再放开。cmd和PowerShell中,一次只能拖一个文件或目录,拖多个也只有鼠标正对着的那个是生效的。开发指引
想要让你自己开发的 ssh 客户端支持 trzsz ?请参考 go ssh client example。
录屏演示
在 windows 的 cmd 使用示例:
在 Ubuntu 原生终端使用示例:
在 Mac 原生终端拖文件上传的示例: