常用参数

  • -c: 建立压缩档案

  • -x: 解压

  • -t: 查看内容

  • -r: 向压缩归档文件末尾追加文件

  • -u: 更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

其他参数

  • -z: 有 gzip 属性的

  • -j: 有 bz2 属性的

  • -Z: 有 compress 属性的

  • -v: 显示所有过程

  • -O: 将文件解开到标准输出

  • --delete: 从存档中删除(注意是两个减号)

必须参数

  • -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

示例

  1. 压缩一个目录

    
    tar -cvzf test.tar.gz tar  # 压缩当前目录下的 tar 目录,压缩包的名字叫 test.tar.gz
  2. 压缩某一类型的文件

    
    tar -cvzf test.tar.gz ./*.c  # 压缩当前目录下的 .c 文件,但是不能压缩以 . 开头的文件
  3. 查看一个压缩文件的内容

    
    tar -tvf test.tar.gz  # 查看当前目录下 test.tar.gz 压缩文件中的文件
  4. 解压一个文件

    
    tar -xvzf test.tar.gz  # 解压 test.tar.gz 到当前目录下面
  5. 文件夹做一个归档文件、备份一个目录

    
    tar -cvf test.tar tar  # 将 tar 文件夹下的文件生成一个 test.tar 归档文件
  6. 将某一类型的文件做成归档文件、备份某一类型的文件

    
    tar -cvf test.tar ./tar/*.c  # 将 tar 文件夹下所有以 .c 结尾的文件放到 test.tar 文件中,但不包括以 . 开头的文件
  7. 向归档文件中添加一个文件夹

    
    tar -rf test.tar ./test1  # 将 test1 文件夹中的所有文件,添加到 test.tar 归档文件中
  8. 删除归档文件中的文件

    
    tar -f test.tar --delete a.c  # 删除 test.tar 文件中的 a.c 文件
  9. 删除归档文件中的某一类的文件

    
    tar -f test.tar --delete *.c  # 删除 test.tar 文件中的以 .c 结尾的文件
  10. 释放归档文件

    
    tar -xvf test.tar  # 释放 test.tar 归档文件中的内容到当前目录下
  11. 查看归档文件中的内容

    
    tar -tvf test.tar  # 查看归档文件中的内容

解压缩命令

  1. .tar 文件

    
    tar -xvf file.tar
  2. .gz 文件

    
    gzip -d file.gz

    或者

    
    gunzip file.gz
  3. .tar.gz.tgz 文件

    
    tar -xzf file.tar.gz
  4. .bz2 文件

    
    bzip2 -d file.bz2

    或者

    
    bunzip2 file.bz2
  5. .tar.bz2 文件

    
    tar -xjf file.tar.bz2
  6. .Z 文件

    
    uncompress file.Z
  7. .tar.Z 文件

    
    tar -xZf file.tar.Z
  8. .rar 文件

    
    unrar e file.rar
  9. .zip 文件

    
    unzip file.zip

打包和压缩命令

  1. 打包一个 .tar 文件

    
    tar cvf etcbak.tar etc/
  2. 解开一个 .tar 文件

    
    tar xvf etcbak.tar
  3. 打包压缩一个 .tar.gz 文件

    
    tar cvzf etcbak.tar.gz etc/
  4. 解压一个 .tar.gz 文件

    
    tar zxvf etcbak.tar.gz