tar命令的参数
- Linux下最常见压缩解压命令就是tar了,这个命令的基础是打包,解包,在此基础上又提供了gzip、bzip2、compress等压缩方式。如果一个文件的后缀仅有 .tar ,那这仅是一个打包文件,而非压缩文件。
tar
//打包的解包相关的命令
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
//压缩解压相关的命令,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
//其他命令
-v:显示所有过程
-O:将文件解开到标准输出
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
tar打包命令示例
tar -cf all.tar *.jpg
//这条命令是将所有.jpg的文件打成一个名为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压缩解压命令示例
- gzip是GNU组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip 相对的解压程序是gunzip。tar中使用-z这个参数来调用gzip。
- 单纯使用gzip软件无法直接压缩文件夹,需要借助tar打包程序才可以。gzip操作时默认删除原文件,可使用参数 -k 保留原文件,使用 -f 参数覆盖已有新文件
tar -czf all.tar.gz *.jpg
//这条命令是将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包,包名为all.tar.gz
tar -xzf all.tar.gz
//这条命令是将上面产生的包解开。
gzip all.png
//将all文件压缩,不能是文件夹,压缩和解压时默认删除原文件, 可使用参数 -k 保留原文件
gzip -d all.png.gz
gunzip all.png.gz
//这两句命令行都可以将上面产生的压缩文件解压
- 调用bzip2压缩程序,后缀名是.bz2。与bzip2相对的解压程序是bunzip2。tar中使用-j这个参数来调用bzip2。
- 单独使用bzip2程序的用法和gzip都是类似的,也是不能直接对文件夹压缩的
tar -cjf all.tar.bz2 *.jpg
//这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩过的包,包名为all.tar.bz2
tar -xjf all.tar.bz2
//这条命令是将上面产生的包解开。
bzip2 all.png
//将all文件压缩,不能是文件夹,压缩和解压时默认删除原文件, 可使用参数 -k 保留原文件
bzip2 -d all.png.bz2
bunzip2 all.png.bz2
//这两条命令都可以将上面的压缩文件解压
- 调用compress压缩程序, 后缀名是.Z。与 compress相对的解压程序是uncompress。tar中使用-Z这个参数来调用compress。
- 单纯的compress程序我用阿里云的Ubuntu 18的stable版本没有找到,apt也没有找到安装包,如下使用compress的命令是根据网上博客汇总而来。总体来说用法与gzip,bzip2基本一致
tar -cZf all.tar.Z *.jpg
//这条命令是将所有.jpg的文件打成一个tar包,并且将其用compress压缩,生成一个uncompress压缩过的包,包名为all.tar.Z
tar -xZf all.tar.Z
//这条命令是将上面产生的包解开
compress all.png
//压缩all文件
uncompress all.png.Z
compress -d all.png.Z
//这两条命令将上述压缩文件解压
引用