Linux 文件传输与归档工具详解

1. tar - 归档工具

使用场景

  • 将多个文件/目录打包成单个文件(不压缩)
  • 保留文件权限和属性
  • 常用于备份和软件分发

常用命令

# 打包
tar -cvf archive.tar file1 file2 dir/  # c=创建, v=显示过程, f=指定文件名

# 解包
tar -xvf archive.tar                   # x=解包

# 查看内容
tar -tvf archive.tar                   # t=列出内容

# 打包并压缩
tar -czvf archive.tar.gz files/        # z=gzip压缩
tar -cjvf archive.tar.bz2 files/       # j=bzip2压缩

# 解压压缩包
tar -xzvf archive.tar.gz               # 解压gzip
tar -xjvf archive.tar.bz2              # 解压bzip2

参数说明

参数 作用
-c 创建归档
-x 提取归档
-z 使用gzip压缩
-j 使用bzip2压缩
-v 显示详细过程
-f 指定文件名

2. unzip - ZIP解压工具

使用场景

  • 解压Windows创建的ZIP文件
  • 处理Java/JAR等基于ZIP格式的文件

常用命令

# 解压到当前目录
unzip file.zip

# 解压到指定目录
unzip file.zip -d /target/path

# 查看ZIP内容
unzip -l file.zip

# 密码解压
unzip -P password file.zip

参数说明

参数 作用
-d 指定解压目录
-l 仅列出内容
-P 使用密码解压

3. scp - 安全复制

使用场景

  • 本地与远程服务器间加密传输文件
  • 简单的单文件传输需求

常用命令

# 本地 → 远程
scp file.txt user@remote:/path/to/dest

# 远程 → 本地
scp user@remote:/path/file.txt /local/path

# 递归复制目录
scp -r dir/ user@remote:/path/

# 指定端口(非默认22时)
scp -P 2222 file.txt user@remote:/path/

参数说明

参数 作用
-r 递归复制目录
-P 指定SSH端口
-C 启用压缩传输

4. sftp - 安全文件传输

使用场景

  • 交互式安全文件传输
  • 需要浏览远程文件系统的场景

常用命令

# 连接服务器
sftp user@remote

# 常用SFTP命令
put local_file          # 上传文件
get remote_file         # 下载文件
ls                      # 列出远程文件
lls                     # 列出本地文件
cd /remote/path         # 切换远程目录
lcd /local/path         # 切换本地目录
exit                    # 退出

与scp对比

特性 scp sftp
交互式
目录浏览
脚本友好
断点续传

5. rsync - 增量同步工具

使用场景

  • 大规模文件同步/备份
  • 需要增量传输的场景
  • 本地/远程目录镜像

常用命令

# 本地同步
rsync -avz src/ dest/   # a=归档模式, v=详细, z=压缩

# 远程同步(SSH协议)
rsync -avz /local/path user@remote:/remote/path

# 排除文件
rsync -avz --exclude='*.tmp' src/ dest/

# 带宽限制(100KB/s)
rsync --bwlimit=100 -avz src/ dest/

# 删除目标多余文件(危险!)
rsync --delete -avz src/ dest/

核心参数

参数 作用
-a 归档模式(保留权限等)
-v 显示详细过程
-z 压缩传输
--progress 显示传输进度
--dry-run 试运行(不实际操作)

工具对比与选择指南

工具 最佳场景 传输加密 增量传输 目录操作
tar 归档/备份
unzip 解压ZIP
scp 简单加密传输
sftp 交互式传输
rsync 增量同步

黄金法则

  • 单文件快速传输 → scp
  • 需要交互操作 → sftp
  • 定期备份/同步 → rsync
  • Windows兼容归档 → unzip
  • Linux系统归档 → tar
作者:admin  创建时间:2025-05-29 09:48
最后编辑:admin  更新时间:2025-05-29 13:26