rz 与 sz 命令使用说明
概述
rz 和 sz 是 Linux/Unix 系统中用于通过终端进行文件传输的命令行工具,通常与 SSH 和 Zmodem 协议结合使用。rz(receive)用于从本地上传文件到远程服务器,sz(send)用于从远程服务器下载文件到本地。这些工具在需要快速传输文件时非常实用,特别是在没有图形界面的服务器环境中。
安装
在大多数 Linux 发行版中,rz 和 sz 包含在 lrzsz 软件包中。以下是安装步骤:
对于基于 Debian/Ubuntu 的系统
bash
sudo apt update
sudo apt install lrzsz对于基于 Red Hat/CentOS 的系统
bash
sudo yum install lrzsz对于 macOS(本地客户端)
如果您在本地 macOS 系统上使用终端并需要支持 rz 和 sz,可以安装 lrzsz:
bash
brew install lrzsz确认安装
安装完成后,检查是否成功安装:
bash
rz --version
sz --version如果返回版本信息,说明安装成功。
使用方法
前提条件
- 确保您的终端软件支持 Zmodem 协议(例如 SecureCRT、XShell 或 iTerm2 配置了 Zmodem 插件)。
- 确保本地和远程系统都已安装
lrzsz软件包。 - 通过 SSH 连接到远程服务器。
使用 rz 命令(上传文件)
rz 命令允许您将本地文件上传到远程服务器。
在终端中通过 SSH 登录到远程服务器。
进入目标目录,例如:
bashcd /path/to/destination输入以下命令启动上传:
bashrz终端会弹出文件选择对话框(取决于终端软件)。选择本地文件并确认。
文件将通过 Zmodem 协议上传到当前目录。
选项:
-b:使用二进制模式传输(默认)。-e:对控制字符进行转义,增强传输稳定性。-y:覆盖目标目录中已存在的同名文件。
示例:
bash
rz -be此命令以二进制模式上传文件,并确保控制字符转义。
使用 sz 命令(下载文件)
sz 命令允许您从远程服务器下载文件到本地。
在终端中通过 SSH 登录到远程服务器。
进入包含目标文件的目录,例如:
bashcd /path/to/source输入以下命令启动下载:
bashsz filename替换
filename为您要下载的文件名。支持同时下载多个文件,例如:bashsz file1.txt file2.txt终端会提示选择本地保存路径(取决于终端软件)。选择路径并确认。
文件将通过 Zmodem 协议下载到本地。
选项:
-b:使用二进制模式传输。-e:对控制字符进行转义。-y:覆盖本地已存在的同名文件。
示例:
bash
sz -be file1.txt此命令以二进制模式下载 file1.txt,并确保控制字符转义。
注意事项
- 终端支持:确保您的终端软件支持 Zmodem 协议。如果使用 iTerm2,需要安装并配置 Zmodem 插件(例如
iterm2-zmodem)。 - 文件路径:在执行
rz或sz前,确认当前工作目录正确,以避免文件上传或下载到错误位置。 - 权限问题:确保远程服务器上的目标目录有写权限(用于
rz),以及读取权限(用于sz)。 - 大文件传输:对于大文件,建议使用
-e选项以提高传输稳定性。 - 替代工具:如果
rz和sz不适用您的场景,可以考虑使用scp、rsync或 FTP/SFTP 进行文件传输。
故障排除
- rz/sz 命令未找到:确认
lrzsz软件包是否安装正确。 - 传输中断:检查网络连接稳定性,或尝试添加
-e选项。 - 终端无响应:确认终端软件是否支持 Zmodem 协议,并检查配置是否正确。
总结
rz 和 sz 是简单高效的文件传输工具,特别适合通过 SSH 进行快速文件交换。通过正确安装和配置,您可以在命令行环境中轻松实现文件的上传和下载。
