国产AⅤ无码一区二区三区_青青在线香蕉精品视频在线_2021年国产精品专区丝袜_久久青草费线频观看地址_亚洲A综合一区二区三区

首頁 >  資訊 >  詳情

【工具推薦】比 rz / sz 還好用的 trzsz ( trz / tsz ) 全球速看料

2023-04-03 18:33:12來源:騰訊云

前言

lrzsz ( rz / sz ) 是非常方便好用的 Linux 文件傳輸工具,但是幾十年沒更新了。


(資料圖)

trzsz 簡介

trzsz ( trz / tsz ) 始于 iTerm2 + tmux 用不了 rz / sz ,使用 Python 開發(fā),兼容 tmux ,有進度條,支持目錄傳輸,支持拖動上傳。github: https://github.com/trzsz/trzsz 。為了支持 web 頁面使用 trzsz ( trz / tsz ) 上傳和下載,以及支持 electron 開發(fā)的一系列終端( 如 tabby 、electerm 等 ),開發(fā)了 js 版本 https://github.com/trzsz/trzsz.js 。為了支持更多的原生終端使用 trzsz ( trz / tsz ),開發(fā)了 go 版本 https://github.com/trzsz/trzsz-go 。

trzsz ( trz / tsz ) 相比 lrzsz ( rz / sz ) 的優(yōu)點

支持 tmux,包括 tmux 普通模式,以及與 iTerm2 集成的 tmux 命令模式。支持 傳輸目錄trz -d命令上傳目錄,tsz -d xxx命令下載 xxx 目錄。支持 Windows,不僅可在 Windows 客戶端使用,也可在 Windows ssh 服務(wù)器使用。支持 原生終端,不需要原生終端做支持,只要使用 trzsz ssh x.x.x.x登錄即可。支持 web 終端,通過 web 瀏覽器在本地與服務(wù)器之間傳輸目錄和文件。支持 拖動上傳,將文件和目錄拖到終端窗口即可上傳到遠程服務(wù)器。支持 進度條,顯示當前正在傳輸?shù)奈募⑦M度、大小、速度和剩余時間等。更好的 交互體驗,傳輸成功或出錯時顯示友好的結(jié)果,ctrl + c優(yōu)雅中止。

trzsz 錄屏演示

iTerm2 文本進度條
瀏覽器上傳和下載文件
原生終端拖文件上傳

安裝指南

在遠程服務(wù)器上安裝

用 Python3 安裝
sudo python3 -m pip install --upgrade trzsz
用 Python2 安裝
sudo python2 -m pip install --upgrade trzsz
用 Homebrew 安裝
brew updatebrew install trzsz
用 Node.js 安裝
sudo npm install -g trzsz
或者安裝用 Go 寫的 trzsz查看 https://github.com/trzsz/trzsz-go

沒有 sudo權(quán)限也可以安裝,只要將安裝路徑 ( 可能是 ~/.local/bin) 添加到 PATH環(huán)境變量中即可。

支持的終端

iTerm2 -- 參考 Trzsz-iTerm2 安裝文檔。tabby -- 安裝 tabby-trzsz 插件即可。electerm -- 升級到 1.19.0以上的版本即可。ttyd -- 升級到 1.7.3以上的版本,并且啟動時加上 -t enableTrzsz=true,非 localhost 要用 https。trzsz-go -- 只要是支持本地 shell 的終端就可以用。trzsz.js -- 讓運行在瀏覽器中的 webshell 和用 electron 開發(fā)的終端支持 trzsz。

使用指南

trz 上傳文件

trz命令可以不帶任何參數(shù),將上傳文件到當前目錄。也可以帶一個目錄參數(shù),指定上傳到哪個目錄。

trz /tmp/

下載文件

tsz可以帶一個或多個文件名(可使用相對路徑或絕對路徑,也可使用通配符),將下載指定的文件。

tsz file1 file2 file3

靜默模式

trz -qtsz -q xxx( 加上 -q選項 ),則在傳輸文件時不顯示進度條。

覆蓋模式

trz -ytsz -y xxx( 加上 -y選項 ),如果存在相同文件名的文件就直接覆蓋。

二進制模式

trz -btsz -b xxx( 加上 -b選項 ),二進制傳輸模式,對于壓縮包、圖片、影音等較快。

轉(zhuǎn)義控制字符

二進制模式時,控制字符可能會導(dǎo)致失敗,trz -ebtsz -eb xxx( 加上 -e選項 ) 轉(zhuǎn)義所有已知的控制字符。

傳輸文件夾

trz -dtsz -d xxx( 加上 -d選項 ),則可以上傳或下載指定文件夾和文件。

緩沖區(qū)上限

trz -B 20mtsz -B 2M xxx等,設(shè)置最大緩沖區(qū)上限 ( 默認 10M )。會自動根據(jù)網(wǎng)速選擇合適的緩沖區(qū)大小,但不會超過此上限。

超時時間

trz -t 30tsz -t 30 xxx等,設(shè)置超時秒數(shù) ( 默認 20 秒 )。在超時時間內(nèi),如果無法傳完一個緩沖區(qū)大小的數(shù)據(jù)則會報錯并退出。設(shè)置為 0 或負數(shù),則永不超時。

異常處理方法

如果 tmux不是運行在遠程服務(wù)器上,而是運行在本地電腦上,或者運行在中間的跳板機上。方案1:使用 tmux -CC與 iTerm2 集成,請參考 iTerm2 與 tmux -CC 集成。方案2:在本地電腦上安裝 trzsz-go,設(shè)置 alias ssh="trzsz ssh"可以方便使用。如果出現(xiàn)了錯誤,且 trzsz掛住不能動了:按組合鍵 control + c可以停止服務(wù)器上的 trztsz進程。對于 iTerm2 用戶,按組合鍵 command + option + shift + r可以停止 iTerm2 Coprocesses。如果 trz -b二進制上傳失敗,并且登錄遠程服務(wù)器時使用了 telnetdocker exec:可以試試轉(zhuǎn)義所有控制字符,例如 trz -eb。如果 trz -btsz -b二進制傳輸失敗,并且登錄遠程服務(wù)器時使用了 expect:可以試試在 expect腳本前設(shè)置環(huán)境變量 export LC_CTYPE=C,例如:
#!/bin/shexport LC_CTYPE=Cexpect -c "  spawn ssh xxx  expect "xxx: "  send "xxx\n"  interact"

關(guān)鍵詞:

[ 相關(guān)文章 ]

[ 相關(guān)新聞 ]