• 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 安装:

    1. # sudo apt update && sudo apt install software-properties-common
    2. # sudo add-apt-repository ppa:trzsz/ppa && sudo apt update
    3. # sudo apt install trzsz

    Debian 用 apt 安装:

    1. # sudo apt install curl gpg
    2. # curl -s 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x7074ce75da7cc691c1ae1a7c7e51d1ad956055ca' \
    3. | gpg --dearmor -o /usr/share/keyrings/trzsz.gpg
    4. # echo 'deb [signed-by=/usr/share/keyrings/trzsz.gpg] https://ppa.launchpadcontent.net/trzsz/ppa/ubuntu jammy main' \
    5. | sudo tee /etc/apt/sources.list.d/trzsz.list
    6. # sudo apt update
    7. # sudo apt install trzsz

    Linux 用 yum 安装:

    1. echo '[trzsz]
    2. name=Trzsz Repo
    3. baseurl=https://yum.fury.io/trzsz/
    4. enabled=1
    5. gpgcheck=0' | sudo tee /etc/yum.repos.d/trzsz.repo
    6. sudo yum install trzsz

    Mac 用 homebrew 安装:

    1. brew update
    2. brew install trzsz-go

    Windows 用 scoop 安装:

    1. scoop bucket add extras
    2. scoop install trzsz

    或从 GitHub 下载源代码安装:

    1. git clone https://github.com/trzsz/trzsz-go.git
    2. cd trzsz-go
    3. make
    4. 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 不带任何参数,则将所要上传的文件到当前目录下,也可以指定所要上传到的目录。

    1. # trz
    2. # 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/

  • 相关阅读:
    PGRouting导航规划-AStar算法
    数据结构篇_编程思想板块_第一章顺序表和链表
    php反序列化漏洞
    【编程不良人】快速入门SpringBoot学习笔记05---Thymeleaf使用及测试案例
    Redis中的Lua脚本(一)
    天然气网络潮流计算模型研究(Matlab代码实现)
    Spring IoC容器:BeanFactory和ApplicationContext
    以沙箱的方式运行容器:安全容器Kata Containers
    LIMIT和OFFSET分页性能差!今天来介绍如何高性能分页
    LabVIEW编程LabVIEW控制C-863.12 水星控制器例程与相关资料
  • 原文地址:https://blog.csdn.net/JineD/article/details/134519636