导言
用过 rz、sz 上传和下载文件的,都知道非常的方便。那么,在 Linux 的原生终端,在 Mac 上的原生终端,在 Windows 中的 cmd 和 PowerShell 等,又能不能像 rz / sz 那样方便地传文件呢?
trzsz
用 github.com/trzsz/trzsz… 这个开源软件,就能够实现相似 rz、sz 那样上传和下文件,还支撑传输目录,支撑拖文件和目录直接上传,传大文件时进度条也非常友爱。
用法
1 、在本地运用 trzsz ssh x.x.x.x
登录服务器( 若用 trzsz -d ssh x.x.x.x
登录,则支撑拖文件和目录上传 )。
2、在服务器上运用 trz
指令上传文件,运用 trz -d
上传目录。
3、在服务器上运用 tsz xxx
指令下载 xxx 文件,运用 tsz -d xxx
下载 xxx 目录。
上传和下载的示例
拖文件上传的示例
装置说明
- 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
- ArchLinux 用 yay 装置
yay -Syu
yay -S trzsz
- 其他 从 github release 下载,或许用 go 编译:
git clone https://github.com/trzsz/trzsz-go.git
cd trzsz-go
make
sudo make install
可配置项
配置文件途径为 ~/.trzsz.conf
DefaultUploadPath =
DefaultDownloadPath = /Users/username/Downloads/
1、DefaultUploadPath
能够设置每次上传默许打开哪个目录。
2、DefaultDownloadPath
能够设置下载的默许途径( 不需求再弹窗选择途径 )。
运用建议
1、为了运用方便,能够设置 alias
,例如 alias ssh="trzsz ssh"
,又或许 alias ssh="trzsz -d ssh"
支撑拖文件上传。
2、trzsz
支撑 tmux
,如果是在本地运用 tmux
,则先运行 tmux
,再 trzsz ssh
登录到远程服务器,即可运用 trz
和 tsz
进行上传和下载。
常见问题
-
如果 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
。 -
拖文件或目录,没有自动上传?
1、查看
ssh
登录时有没有加上-d
选项,如trzsz -d ssh x.x.x.x
。2、查看服务器上有没有装置 trzsz 或 trzsz-go,
trz
应在某个PATH
途径下。3、在 Windows 中,查看标题有没有
管理员
三个字,以管理员运行
时可能会因为 UAC 设置的原因导致拖不了文件。4、在 Windows Terminal 中,需求将文件或目录拖到左上角,显现
粘贴文件途径
时再放开。5、在 Windows 的
cmd
和PowerShell
中,一次只能拖一个文件或目录,拖多个也只有鼠标正对着的那个是收效的。