(Linux之软件包管理器(CentOS系统) —— yum-CSDN博客)rzsz工具之前我在这篇文章中介绍过,现在重新详细介绍一下该工具。rzsz 是一个用于在 Windows 和 Linux 系统之间传输文件的工具集,通常通过终端模拟器(如 XShell、SecureCRT 等)使用。它包含两个主要命令:
rz
(接收文件)和sz
(发送文件)。
目录
一、安装 rzsz
基于 Debian/Ubuntu 的系统
基于 RHEL/CentOS 的系统
二、关于软件包的命名
1. 历史命名惯例
2. 与原始 rzsz 的区别
3. 软件仓库的命名规范
验证方法
三、基本使用方法
从 Windows 上传文件到 Linux (rz)
从 Linux 下载文件到 Windows (sz)
四、rz和sz的常用选项
补充说明(需了解)
五、高级功能
批量传输:
指定传输协议
显示传输进度
六、使用场景示例
七、注意事项
八、替代方案
一、安装 rzsz
在 Linux 系统上安装 rzsz 的方法取决于你的发行版:
基于 Debian/Ubuntu 的系统
sudo apt-get install -y lrzsz
基于 RHEL/CentOS 的系统
sudo yum install -y lrzsz
二、关于软件包的命名
rzsz
工具在 Linux 系统中的软件包名称通常为 lrzsz
,这是因为:
1. 历史命名惯例
-
lrzsz
是 "Linux rz/sz" 的缩写,表明这是 Linux 平台下的 rz/sz 工具实现。 -
在 Unix/Linux 软件包管理中,前缀
l
有时用于区分原生 Linux 版本(例如lrzsz
vs 其他系统的rzsz
)。
2. 与原始 rzsz 的区别
-
最早的
rz/sz
是 ZMODEM 协议 的文件传输工具,源自早期 Unix 系统(如 SunOS)。 -
lrzsz
是专为 Linux 移植/优化的版本,兼容性更好。
3. 软件仓库的命名规范
-
在 Debian/Ubuntu (
apt
) 和 RHEL/CentOS (yum
) 的官方仓库中,统一采用lrzsz
作为包名。 -
输入
rz
或sz
命令时,实际调用的是lrzsz
包安装的二进制文件。
验证方法
安装后可以通过以下命令查看关联的软件包:
# 查看 rz 命令的来源
which rz # 通常输出 /usr/bin/rz
dpkg -S /usr/bin/rz # Ubuntu/Debian 确认所属包(显示 lrzsz)
rpm -qf /usr/bin/rz # CentOS/RHEL 确认所属包(显示 lrzsz)
三、基本使用方法
从 Windows 上传文件到 Linux (rz)
-
在 Linux 终端中输入命令:
rz
-
会弹出文件选择对话框,选择要上传的文件
-
文件将被传输到当前工作目录
从 Linux 下载文件到 Windows (sz)
-
在 Linux 终端中输入命令:
sz 文件名
-
会弹出保存对话框,选择保存位置
-
文件将被传输到本地 Windows 系统
四、rz和sz的常用选项
选项 | 适用命令 | 说明 | 示例 |
---|---|---|---|
-y | rz / sz | 覆盖同名文件前询问确认 | rz -y (上传时确认覆盖)sz -y file.txt (下载时确认覆盖) |
-e | rz / sz | 对控制字符进行转义(防止特殊字符解析错误) | sz -e file.txt |
-E | rz | 强制覆盖同名文件(无确认) | rz -E |
-a | sz | 使用 ASCII 模式传输(文本文件优化) | sz -a file.txt |
-b | sz | 使用二进制模式传输(默认,适合所有文件) | sz -b file.zip |
-v | sz | 显示详细传输进度 | sz -v file.iso |
-c | sz | 发送后执行命令(需配合脚本) | sz -c "rm file.txt" file.txt |
-q | rz / sz | 静默模式(不显示进度信息) | sz -q file.log |
补充说明(需了解)
-
协议支持:
rz/sz
默认使用 ZMODEM 协议,部分终端(如 XShell、SecureCRT)也支持 XMODEM/YMODEM(需通过-x
/-y
选项指定,但较少用)。 -
大文件限制:ZMODEM 适合中小文件,超大文件建议用
scp
/rsync
。 -
终端兼容性:非图形终端(如纯 TTY)可能无法弹出文件选择对话框,需手动指定路径。
如果需要更详细的参数说明,可通过 man rz
或 sz --help
查看帮助文档。
五、高级功能
-
批量传输:
sz 文件1 文件2 文件3
或
rz -y # 允许覆盖已存在文件
-
指定传输协议
sz -e 文件名 # 使用转义控制字符
-
显示传输进度
sz -v 文件名
六、使用场景示例
-
开发人员:将本地编写的代码上传到服务器测试
-
系统管理员:从服务器下载日志文件分析
-
数据库管理员:传输数据库备份文件
七、注意事项
-
rzsz 依赖于终端模拟器的支持,不是所有终端都支持
-
大文件传输可能会比较慢,建议使用其他工具如 scp/sftp 传输大文件
-
某些安全策略严格的服务器可能禁用此功能
-
传输过程中不要中断会话,否则可能导致文件损坏
八、替代方案
rzsz 因其简单易用,在小型文件传输场景中仍然非常受欢迎。如果 rzsz 不可用,可以考虑以下替代方案:
-
scp/sftp
-
rsync
-
FTP
-
云存储中转