插件窝 干货文章 linux怎么用sz命令

linux怎么用sz命令

终端 文件 传输 本地 60    来源:    2025-04-06

sz 命令(属于 lrzsz 工具包)用于在 Linux 系统中通过 ZMODEM 协议从本地向远程终端(如 SecureCRT、Xshell 等)发送文件。以下是详细使用方法:


1. 安装 lrzsz

若系统未预装,需先安装:

# Debian/Ubuntu
sudo apt-get install lrzsz

# CentOS/RHEL
sudo yum install lrzsz

# Arch Linux
sudo pacman -S lrzsz

2. 基本用法

发送文件到本地终端

sz [文件名]

示例:

sz backup.tar.gz  # 将文件发送到本地终端

发送多个文件

sz file1.txt file2.txt  # 同时发送多个文件

自动重命名(跳过确认)

sz -a backup.tar.gz  # 自动覆盖本地同名文件

指定下载目录(终端侧配置)

  • 在终端软件(如 SecureCRT/Xshell)中预先设置默认下载目录。

3. 常用参数

参数 作用
-a 自动覆盖本地同名文件
-b 使用二进制模式传输
-e 对控制字符转义(用于文本文件)
-y 同名文件直接覆盖

示例:

sz -b -y install.iso  # 强制二进制传输并覆盖本地文件

4. 注意事项

  1. 依赖终端支持:需使用支持 ZMODEM 的终端(如 SecureCRT、Xshell、MobaXterm)。
  2. 交互过程:执行命令后,终端会弹出文件接收对话框(部分终端需手动确认)。
  3. 大文件传输:建议使用 -b 二进制模式避免编码问题。
  4. 替代方案:若 sz 不可用,可改用 scprsyncbash scp file.txt user@remote:/path # 通过SSH传输

5. 故障排查

  • 命令未找到:安装 lrzsz 后重试。
  • 传输中断:检查网络稳定性或尝试分卷压缩后传输。
  • 终端无响应:确认终端软件是否启用 ZMODEM 协议。

通过以上步骤,你可以高效地使用 sz 命令在 Linux 和本地终端之间传输文件。