linux文件系统的压缩,打包与备份

linux系统常见的压缩文件扩展名:

*.Z               compress程序压缩的文件
*.Zip            Zip程序压缩的文件
*.gz              gzip程序压缩的文件
*.bz2            bzip2 程序压缩的文件
*.xZ              xZ程序压缩的文件
*.tar             tar程序打包的数据,没有压缩过
*.tar.gz         tar程序打包的文件,经过gzip的压缩
*.tar.bz2       tar程序打包的文件,经过bzip2的压缩

*.tar.xz          tar程序打包的文件,经过xz的压缩

linux上常见的压缩指令就是gzip,bzip2以及xz,至于compress已经退流行了。

 

1 、gzip,zcat/zmore/zless/zgrep

gzip语法:gzip [-cdtv#] 文件名

            参数:-c  : 将压缩的数据输出到屏幕上,可透过数据流冲到向来处理

                      -d  :解压缩的参数

                      -t   :可以用来检验一个压缩文件的一致性,看文件有无错误

                      -v  :可以显示出原文件/压缩文件的压缩比等信息

                      -# :#为数字,1~9代表压缩等级,-1最快,压缩比最差,-9最慢,但压缩比最好,默认是-6.

查看压缩文件的内容:  zcat 文件名.gz  /zmore 文件名.gz /zless 文件名.gz

解压缩:  gzip -d 文件名.gz

查找关键词:zgrep -n '关键词' 文件.gz

 

2、bzip2,bzcat/bzmore/bzless/bzgrep

bzip2的压缩比比gzip好,至于语法则几乎与gzip相同。

 

bzip2语法:bzip2 [-cdkzv#] 文件名

            参数:-c  : 将压缩的数据输出到屏幕上,可透过数据流冲到向来处理

                      -d  :解压缩的参数

                      -k   :保留源文件,而不会删除原始文件

                      -z   :压缩的参数(默认值,可以不加)

                      -v  :可以显示出原文件/压缩文件的压缩比等信息

                      -# :#为数字,1~9代表压缩等级,-1最快,压缩比最差,-9最慢,但压缩比最好,默认是-6.

查看压缩文件的内容:  bzcat 文件名.gz  /bzmore 文件名.gz /bzless 文件名.gz

解压缩:  bzip2 -d 文件名.gz

查找关键词:bzgrep -n '关键词' 文件.gz

 

3、 xz,xzcat/xzmore/xzless/xzgrep    

  xz的压缩比比把bizp2还要高,其用法则与bzip2几乎一模一样,本文就不在多说了,参考bzip2即可。但是相对的更好的压缩比意味着要话费更多的压缩时间。

 

4、tar包

语法如下:

tar [-z|-j|-J] [cv] [-f 待建立的新包名] filename    打包与压缩
tar [-z|-j|-J] [tv] [-f 现有的tar包名]              查看包名
tar [-z|-j|-J] [xv] [-f 现有的tar包名]  [-C 目录]   解压缩

 

选项与参数:

-c : 建立打包文件
-t : 查看打包文件的内容包含哪些文件名
-x : 解打包或解压缩的功能,搭配-C在特定目录中揭开
-z : 通过gzip的支持进行压缩/解压缩,文件名后缀最好为*.tar.gz
-j : 通过bzip2的支持进行压缩/解压缩,文件名后缀最好为*.tar.bz2
-J : 通过xz 的支持进行压缩/解压缩,文件名后缀最好为*.tar.xz
-v : 在压缩/解压缩的过程中,将正在处理的文件名显示出来
-f : -f后面要立即接将要被处理的文件名,所以在将参数连起来写的时候,需要将f放在最后
-C : 解压缩指定目录
-p(小写) : 保留备份数据的原本权限与属性
-P(大写) : 保留绝对路径,即允许备份数据中含有根目录存在
--exclude=FILE : 在压缩的过程中,不要讲FILE打包


范例一:  压缩     tar -jcvf filename.tar.bz2  filename
              查询     tar -jtvf filename.tar.bz2 
              解压缩 tar -jxvf filename.tar.bz2 -C 欲解压缩的目录

5.  dd命令

dd if=''input_file'' of=''output_file'' bs=''block_size'' count=''number''

选项与参数:

if :   就是input file 

of :  就是output file

bs:  规划的一个block块的大小,如果没有指定就预设是512bytes

count:多少个bs的意思

 

范例一:将/etc/passwd 备份到 /tmp/passwd.bak 当中

 dd if=/etc/passwd of=/tmp/passwd.back

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(linux基础)