trzsz-go
trzsz-go copied to clipboard
trzsz-go is the go version of trzsz, makes all terminals that support local shell to support trzsz ( trz / tsz ).
trzsz-go
trzsz ( trz / tsz ) is a simple file transfer tools, similar to lrzsz ( rz / sz ), and compatible with tmux.
Installation
with apt on Ubuntu
sudo apt update && sudo apt install software-properties-common
sudo add-apt-repository ppa:trzsz/ppa && sudo apt update
sudo apt install trzsz
with apt on Debian
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
with 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
with homebrew
brew update
brew install trzsz-go
with scoop on Windows
scoop bucket add extras
scoop install trzsz
with yay on ArchLinux
yay -Syu
yay -S trzsz
Others
Download from the github releases, or install from the source code:
git clone https://github.com/trzsz/trzsz-go.git
cd trzsz-go
make
sudo make install
Usage
on Local
Add trzsz
before the shell to support trzsz ( trz / tsz ), e.g.:
trzsz bash
trzsz PowerShell
trzsz ssh x.x.x.x
Add trzsz --dragfile
before the ssh
to enable drag files and directories to upload, e.g.:
trzsz -d ssh x.x.x.x
trzsz --dragfile ssh x.x.x.x
on Server
Similar to lrzsz ( rz / sz ), command trz
to upload files, command tsz /path/to/file
to download files.
For more information, see the website of trzsz: https://trzsz.github.io.
Suggestion
-
It is recommended to set
alias ssh="trzsz ssh"
for convenience,alias ssh="trzsz -d ssh"
for dragging files. -
If using
tmux
on the local computer, runtmux
( withouttrzsz
) first, thentrzsz ssh
to login.
Configuration
trzsz
looks for configuration at ~/.trzsz.conf
. e.g.:
DefaultUploadPath =
DefaultDownloadPath = /Users/username/Downloads/
-
If the
DefaultUploadPath
is not empty, the path will be opened by default while choosing upload files. -
If the
DefaultDownloadPath
is not empty, downloading files will be saved to the path automatically instead of asking each time.
Trouble shooting
-
If using MSYS2 or Git Bash on windows, and getting an error
The handle is invalid
.- Install winpty by
pacman -S winpty
inMSYS2
. -
Git Bash
should have winpty installed, no need to install it manually. - Add
winpty
beforetrzsz
, e.g.:winpty trzsz ssh x.x.x.x
.
- Install winpty by
-
The
/usr/bin/ssh
in MSYS2 and Cygwin is not supported yet, use the OpenSSH instead.- In
MSYS2
, e.g.:winpty trzsz /c/Windows/System32/OpenSSH/ssh.exe x.x.x.x
. - In
Cygwin
, e.g.:trzsz "C:\Windows\System32\OpenSSH\ssh.exe" x.x.x.x
.
- In
-
Dragging files doesn't upload?
- Don't forget the
--dragfile
option. e.g.:trzsz -d ssh x.x.x.x
. - Make sure the
trz
in one of thePATH
directory on the server. - On Windows, make sure there is no
Administrator
on the title. - The
cmd
andPowerShell
only support draging one file into it. - On the Windows Terminal, drag files to the top left where shows
Paste path to file
.
- Don't forget the
Screenshot
Windows
Ubuntu
Drag files
Contact
Feel free to email me [email protected].