Linux系统中的tar命令

时间:2021-11-20 09:16:34

  时间一长什么东西都容易忘记,尤其是一些不常用的东西忘记的更快,所以避免忘记,就记录下来,可以方面使用的时候查询。Tar命令在linux系统中算是一个比较重要的命令,今天就针对该命令进行总结一下。

 

 

  1.tar命令格式:

 

    tar [必要参数] [选择参数] [文件] 

 

  2.命令功能:

 

    用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的 

 

  3.命令参数:

 

    必要参数有如下:

 

    -A 新增压缩文件到已存在的压缩

 

    -B 设置区块大小

 

    -c 建立新的压缩文件

 

    -d 记录文件的差别

 

    -r 添加文件到已经压缩的文件

 

    -u 添加改变了和现有的文件到已经存在的压缩文件

 

    -x 从压缩的文件中提取文件

 

    -t 显示压缩文件的内容

 

    -z 支持gzip解压文件

 

    -j 支持bzip2解压文件

 

    -Z 支持compress解压文件

 

    -v 显示操作过程

 

    -l 文件系统边界设置

 

    -k 保留原有文件不覆盖

 

    -m 保留文件不被覆盖

 

    -W 确认压缩文件的正确性

 

    可选参数如下

 

    -b 设置区块数目

 

    -C 切换到指定目录

 

    -f 指定压缩文件

 

    --help 显示帮助信息

 

    --version 显示版本信息

 

    -c: 建立压缩档案
     -x:解压
     -t:查看内容
     -r:向压缩归档文件末尾追加文件
     -u:更新原压缩包中的文件

   这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

    -z:有gzip属性的
     -j:有bz2属性的
     -Z:有compress属性的
     -v:显示所有过程
     -O:将文件解开到标准输出

  下面的参数-f是必须的

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

    # tar -cf all.tar *.txt
     这条命令是将所有.txt的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

    # tar -rf all.tar *.gif
     这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

    # tar -uf all.tar logo.gif
     这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

    # tar -tf all.tar
     这条命令是列出all.tar包中所有文件,-t是列出文件的意思

    # tar -xf all.tar
     这条命令是解出all.tar包中所有文件,-x是解开的意思


   压缩

    tar –cvf txt.tar *.txt  将目录里所有txt文件打包成txt.tar

    tar –czf txt.tar.gz *.txt   将目录里所有txt文件打包成txt.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为txt.tar.gz

    tar –cjf txt.tar.bz2 *.txt 将目录里所有txt文件打包成txt.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为txt.tar.bz2

    zip txt.zip *.txt   zip格式的压缩,需要先下载zip for linux

  解压

    tar –xvf file.tar  解压 tar包

    tar -xzvf file.tar.gz 解压tar.gz

    tar -xjvf file.tar.bz2   解压 tar.bz2

    unzip file.zip 解压zip

  4.常见解压/压缩命令

    tar 
       解包:tar xvf FileName.tar
       打包:tar cvf FileName.tar DirName
       (注:tar是打包,不是压缩!)


     .gz
       解压1:gunzip FileName.gz
       解压2:gzip -d FileName.gz
       压缩:gzip FileName

    .tar.gz 和 .tgz
       解压:tar zxvf FileName.tar.gz
       压缩:tar zcvf FileName.tar.gz DirName

     .bz2
       解压1:bzip2 -d FileName.bz2
       解压2:bunzip2 FileName.bz2
       压缩: bzip2 -z FileName

    .tar.bz2
       解压:tar jxvf FileName.tar.bz2
       压缩:tar jcvf FileName.tar.bz2 DirName

     .bz
       解压1:bzip2 -d FileName.bz
       解压2:bunzip2 FileName.bz
       压缩:未知

    .tar.bz
       解压:tar jxvf FileName.tar.bz
       压缩:未知

    .zip
       解压:unzip FileName.zip
       压缩:zip FileName.zip DirName

 

  5、总结

    1. *.tar 用 tar –xvf 解压
    2. *.gz 用 gzip -d或者gunzip 解压
    3. *.tar.gz和*.tgz 用 tar –xzf 解压
    4. *.bz2 用 bzip2 -d或者用bunzip2 解压
    5. *.tar.bz2用tar –xjf 解压
    6. *.Z 用 uncompress 解压
    7. *.tar.Z 用tar –xZf 解压
    8. *.rar 用 unrar e解压
    9. *.zip 用 unzip 解压