文件压缩 1、压缩工具及压缩格式 gzip/gunzip .gz bzip2/bunzip2 .bz2 xz/unxz .xz compress/uncompress .Z zip/unzip tar cpio 其中最常用的压缩工具有:gzip、bzip2、xz。这三种工具 [只能对文件进行压缩],如果对目录进行压缩,则是 [对目 录内的每个文件进行压缩]。gzip、bzip2、xz默认这三种压缩工具压缩后,会 [删除原文件]。 2、gzip/gunzip 特点: gzip压缩后的压缩文件后缀为.gz 不能压缩目录 不能指定压缩后的文件的放置位置 压缩: gzip /PATH/TO/SOMEFILE #压缩某个文件 选项: -N # [1-9],指定压缩比,默认是6 -d # 表示解压缩 -r # 在指定压缩目录时,递归进入每一个目录将每个文件进行压缩 -c # 压缩之后将压缩结果输出到标准输出。可以利用这个选项达到保留源文件的目的。 gzip -c /var/log/messages > messages.gz 解压: gunzip /PATH/TO/SOMEFILE.gz # 解压某个文件 zcat /PATH/TO/SOMEFILE.gz # 不解压的情况下,查看文本内容 3、bzip2/bunzip2 特点: 后缀为.bz2 适合压缩大文件 压缩: bzip2 /PATH/TO/SOMEFILE # 压缩某个文件 选项: -d # 表示解压缩 -N # [1-9],指定压缩比,默认是9 -k # 保留源文件 -c # 将压缩的结果输出到标准输出 解压: bunzip2 /PATH/TO/SOMEFILE.bz2 # 解压某个文件 bzcat /PATH/TO/SOMEFILE.bz2 # 不解压的情况下,查看文本内容 4、xz/unxz 特点: 后缀为.xz 压缩: xz /PATH/TO/SOMEFILE # 压缩某个文件 选型: -d # 表示解压缩 -# # [1-9],指定压缩比,默认是6 -k # 保留源文件 -c # 将压缩结果输出到标准输出 解压: unxz /PATH/TO/SOMEFILE.bz2 # 解压某个文件 xzcat /PATH/TO/SOMEFILE.bz2 # 不解压的情况下,查看文本内容 5、zip 特点: 可以压缩目录,默认不删除源文件 压缩: zip 压缩后的文件名.zip 来源文件 …… # 如果压缩的是目录 zip dir.zip dir/* 解压缩: unzip FILE.zip 6、tar (Tape ARchive) 1、归档工具:只归档,不压缩。可以直接调用压缩工具,归档后直接压缩。 2、用法 tar -v # 显示创建过程 -c # 表示创建归档文件 -f # 后面跟归档后的文件名 -x # 展开归档文件 -t # 查看归档后的tar文件 -f # 指定打包生成文件以及生成后存放的路径 -r # 追加文件到归档后的文件 示例:tar -vr /etc/sysconfig -f etc.tar --exclude # 去除某些特定文件,不将它打包到目录。可以指定多次多个文件,还可以用正则表达式匹配 -T /path/to/file # 事先将要打包的文件列表存放到一个文件内,然后-T指定进行打包 -X /path/to/file # 将不打包的文件,排除的文件列表写入文件,-X指定排除 -j # 调用bzip2 .bz2 -z # 调用gzip .gz -J # 调用xz .xz --xattrs # 归档时保留文件的扩展属性信息 -C # 指定展开后的目录 -p # 保留备份数据的原本权限与属性,常用于备份重要的配置文件 3、示例 # 打包/etc目录 tar -cv -f etc.tar /etc # 解包,展开归档 tar -xv -f etc.tar # 查看归档后的包的内容 tar -tv -f etc.tar 4、注: 1、打包的文件是相对路径。在打包前会先将文件的/去掉,避免以后展开后覆盖原文件。 5、tar命令格式 tar -[option] -f [d_file] s_file . . . 7、cpio 备份的cpio类似于一个水管,文档从cpio进入之后,在从cpio出来即打包。 例如备份log目录:find log/ | cpio -H newc -o -v > log.cpio 还原cpio文档时,会就地还原到原路径 例如还原:log.cpio cpio -i -v < log.cpio # 备份 find * -depth -print | cpio -H newc -o > /somepath/archive.cpio # 备份压缩 find . | cpio -H newc --quiet -o | gzip -9 > /path/to/file.gz 1、格式: cpio [ 选项] > 文件名或者设备名 cpio [ 选项] < 文件名或者设备名 2、选项: -o 将文件拷贝打包成文件或者将文件输出到设备上 -i 解包,将打包文件解压或将设备上的备份还原到系统 -t 预览,查看文件内容或者输出到设备上的文件内容 -v 显示打包过程中的文件名称。 -d 解包生成目录,在cpio 还原时,自动的建立原文件存在的目录并存放 8、compress/uncompress 后缀为.Z # 此工具由ncompress.x86_64包提供 压缩: compress FILENAME # 源文件删除 解压: uncompress FILENAME 选项: -d # 表示解压缩 -c # 结果输出到标准输出,不删除源文件 注:压缩工具通过后缀识别压缩文件