转载请出自出处:http://eksliang.iteye.com/blog/2109693
linux中常见压缩文件的拓展名
*.gz gzip程序压缩的文件 *.bz2 bzip程序压缩的文件 *.tar tar程序打包的数据,没有经过压缩 *.tar.gz tar程序打包后,并经过gzip程序压缩 *.tar.bz2 tar程序打包后,并经过bzip程序压缩 *.zip zip程序压缩的文件 *.rar rar.程序压缩的文
unzip与zip
实例一:将当前目录下的.txt结尾的文件和目录tmp压缩成test.zip
zip test.zip *.txt tmp
实例二:查看*.zip里面的压缩的内容
unzip -l test.zip
实例三:解压*.zip压缩包
unzip test.zip
实例四:解压*.zip到指定目录
unzip test.zip -d ./tmp
gzip与zcat
目前,gzip可以解开zip、gzip等软件所压缩的文件,用gzip压缩的的文件后缀国际统一为*.gz
语法: gzip [-cdtv#] 文件名 zcat *.gz 参数: -c:将压缩的数据输出到屏幕上,可通过数据流重定向来处理; -d:解压的参数; -t:可以用来验证一个压缩文件有没有错误; -v:可以显示出"原文件/压缩文件"的压缩比等信息; -#:压缩等级,1最快,但是压缩比最差,-9最慢,但是压缩比最高,默认为6;
实例一:压缩实例
gzip aa.txt
实例二:解压实例
gzip -dv aa.txt.gz
实例三:读出.gz压缩文件的内容
zcat aa.txt.gz
实例四:压缩文件并保留原文件
gzip -c aa.txt > aa.txt.gz
虽然gzip提供了1~9的压缩等级,不过使用默认的6已经非常好用了,建议在压缩时就用默认的-6;
cat可以读取纯文本的文件,那个zcat则可以读取纯文本被压缩后的压缩文件
bzip2与bzcat 如果说gzip的出现是为了替代compress这个压缩软件,那么bzip2的出现则是为了取代gzip,因为他提供了更佳的压缩比。他的用法与gizp基本相同语法: bzip2 [-cdkzv#] 文件名 bzat *.bz2 参数: -c:将解压过程中产生的数据输出到屏幕上 -d:解压参数 -k:压缩文件时保留原文件,而不会删除原文件 -z:压缩参数 -v:压缩文件时将显示出原文件/压缩文件的压缩比等信息 -#:压缩等级,-1压缩快,但是压缩比最差,-9最慢,但是压缩比最佳,默认为6实例一:压缩实例
#压缩完后会把原文件删除 bzip2 -z aa.txt #压缩完后保留原文件 bzip2 -kz bb.txt实例二:查看压缩文件的内容
bzcat aa.txt.bz2实例三:解压*.bz2文件
bzip2 -d bb.txt.bz2
打包命令tar
前面介绍的gzip、bzip2仅能压缩单个文件,对于目录,多个文件同时压缩,这等操作,他是弄不了的,怎么办,tar出现了,tar的作用就是将目录或者多个文件打包成一个大文件,但是他打包的文件是没有经过压缩的,所以才称呼他为”打包命令“,用tar打包过后的多个文件或者目录就可以使用gzip、bzip2这个压缩程序进行压缩了。
语法: tar [-ctxv] [-jz] [-f 文件名] 文件名 [-C 目录] 参数含义: -c:新建打包文件,通常搭配-v来查看过程中被打包的文件名 -t:查看打包文件的内容中有哪些文件名,重点在查看 -x:解压参数,通常搭配-C指定在特定的目录解开 #注意了!这个非常关键,c、t、x这三个参数不可以同时在一串命令中。 -j:通过bzip2的支持进行压缩/解压缩,此时压缩文件规范命名为 *.tar.bz2 -z:通过gzip的支持进行压缩/解压缩,此时压缩文件规范命令为*.tar.gz -v:在压缩、解压缩的过程中,将正在处理的文件名显示出来 -f:后面接被压缩或者被解压的文件名 -C:使用这个参数可以再解压时,将压缩文件解压在特定目录(大写的C)
这个不用记,反正我写这个博客的目的就是为了以后在用到时直接copy就可以了,所以我采取的是例子驱动的方式写这个博客
实例一:单独用tar打包,将当前目录下的所有txt文件打包成test.tar
tar -cv -f test.tar ./*.txt
实例二:查看test.tar包的内容
tar -tv -f test.tar
实例三:解压tar包
#将tar包解压到当前目录 tar -xv -f test.tar #将test.tar解压到当前目录的tmp下 tar -xv -f test.tar -C ./tmp/
实例四:*.tar.gz的常用操作,用的时候就是copy改下文件名就OK了
#将当前目录下的txt打包成txt.txt.gz,是经过gzip压缩过的 tar -czv -f txt.tar.gz ./*.txt #查看*.tar.gz包下面的文件 tar -tzv -f txt.tar.gz #解压*.tar.gz文件 tar -xzv -f txt.tar.gz #解压到指定目录 tar -xzv -f txt.tar.gz -C ./tmp
实例五:*.tar.bz2的常用操作
#将当前目录下的txt打包成txt.txt.bz2,是经过bzip2压缩过的 tar -cjv -f txt.tar.bz2 ./*.txt #查看*.tar.bz2包下面的文件 tar -tjv -f txt.tar.bz2 #解压*.tar.bz2文件 tar -xjv -f txt.tar.bz2 #解压到指定目录 tar -xjv -f txt.tar.bz2 -C ./tmp
打包war包跟解压war包
将当前目录下面的user文件,压缩user.war在当前目录 jar -cvf user.war ./user 参数含义 -c 创建war包 -v 显示过程信息 -f 指定 JAR 文件名,通常这个参数是必须的 -M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数 -0 这个是阿拉伯数字,只打包不压缩的意思 将user.war包解压到当前目录 jar -xvf user.war