tar命令复习

tar 命令用于在 Linux 和 Unix 系统中创建、查看和提取归档文件。它通常用于打包和压缩文件或目录。以下是 tar 命令的常见用法:


基本语法

tar [选项] [归档文件名] [文件或目录列表]

常用选项

选项 说明
-c 创建新的归档文件
-x 提取归档文件
-t 查看归档文件内容
-v 显示详细过程(verbose)
-f 指定归档文件名
-z 使用 gzip 压缩或解压(.tar.gz.tgz
-j 使用 bzip2 压缩或解压(.tar.bz2
-J 使用 xz 压缩或解压(.tar.xz
-r 向归档文件中追加文件
-u 更新归档文件中的文件(仅添加比归档中更新的文件)
--exclude 排除指定的文件或目录
-C 指定解压到的目标目录

常见用法示例

1. 创建归档文件

  • 打包目录(不压缩):
    tar -cvf archive.tar /path/to/directory
    
  • 打包并压缩(使用 gzip):
    tar -czvf archive.tar.gz /path/to/directory
    
  • 打包并压缩(使用 bzip2):
    tar -cjvf archive.tar.bz2 /path/to/directory
    
  • 打包并压缩(使用 xz):
    tar -cJvf archive.tar.xz /path/to/directory
    

2. 查看归档文件内容

  • 查看 .tar 文件内容:
    tar -tvf archive.tar
    
  • 查看 .tar.gz 文件内容:
    tar -tzvf archive.tar.gz
    

3. 提取归档文件

  • 提取 .tar 文件:
    tar -xvf archive.tar
    
  • 提取 .tar.gz 文件:
    tar -xzvf archive.tar.gz
    
  • 提取到指定目录:
    tar -xzvf archive.tar.gz -C /target/directory
    

4. 向归档文件中追加文件

  • .tar 文件中追加文件:
    tar -rvf archive.tar newfile.txt
    

5. 排除文件或目录

  • 打包时排除某些文件或目录:
    tar -czvf archive.tar.gz --exclude='*.log' /path/to/directory
    

6. 分卷压缩

  • 将大文件分卷压缩(每卷 1GB):
    tar -cvzf - /path/to/directory | split -b 1G - archive.tar.gz.
    

7. 增量备份

  • 创建增量备份:
    tar --listed-incremental=snapshot.file -cvzf backup.tar.gz /path/to/directory
    

常用组合

操作 命令
打包 tar -cvf archive.tar /path/to/directory
打包并压缩(gzip) tar -czvf archive.tar.gz /path/to/directory
查看归档内容 tar -tvf archive.tar
提取归档 tar -xvf archive.tar
提取到指定目录 tar -xvf archive.tar -C /target/directory

注意事项

  1. 权限问题:使用 sudo 打包或解压需要管理员权限的文件或目录。
  2. 路径问题:打包时尽量使用相对路径,避免解压时覆盖系统文件。
  3. 压缩格式:根据需求选择合适的压缩格式(如 .tar.gz.tar.bz2.tar.xz)。

通过以上用法,你可以灵活使用 tar 命令来管理文件和目录的归档与压缩。

posted @ 2025-02-17 09:20  中仕  阅读(491)  评论(0)    收藏  举报