- 文件压缩技术原理
- Linux文件压缩指令
- compress
- gzip
- bzip2
- xz
- 打包
- 解压压缩包中的一个文件
- 打包时除去某些文件
- 打包时增加时间条件
文件压缩最重要的一点是文件的准确性,要确保文件压缩前和解压后是完全相同的,根据鸟哥私房菜中所说,一种压缩方式是将空的bit位丢弃,来减少文件占用的内存空间;另一种是对重复的数据进行统计,采用计数的方法表示这些重复数据,来降低文件内存。
Linux文件压缩指令 compress一种比较古老的压缩命令,压缩后的文件会增加一个.z的后缀,在压缩多个目录时必须先打包。
参数: c 输出结果至标准输出设备(一般指荧幕) f 强迫写入档案,若目的档已经存在,则会被覆盖 (force) v 将程序执行的讯息印在荧幕上 (verbose) b 设定共同字串数的上限,以位元计算,可以设定的值为 9 至 16 bits 。由于值越大,能使用的共同字串就 越多,压缩比例就越大,所以一般使用预设值 16 bits (bits) d 将压缩档解压缩 V 列出版本讯息
现在已经没了。。。
参数: -c:将压缩的数据输出到屏幕上,可透过数据流重导向来处理 -d:解压缩 -t:可检验一个压缩文件的一致性,查看文件有没有错误 -v:可以显示原文件/压缩文件的压缩比 -#:#是数字,表示压缩的等级,1速度最快,但是压缩比低,9压缩比高,但是速度慢,默认值为6
gzip会默认覆盖原来的文件,可以通过-c来重定向输出到新的文件中,gcat可以读取压缩后的文件中的内容,zgrep可以在压缩文件中进行关键词搜索
参数: -c:将压缩的数据输出到屏幕上 -d:解压缩 -k:保留源文件 -z:压缩的参数,默认值,可以不加 -t:可检验一个压缩文件的一致性,查看文件有没有错误 -v:可以显示原文件/压缩文件的压缩比 -#:#是数字,表示压缩的等级,1速度最快,但是压缩比低,9压缩比高,但是速度慢,默认值为6xz
参数: -c:将压缩的数据输出到屏幕上 -d:解压缩 -k:保留源文件 -t:可检验一个压缩文件的一致性,查看文件有没有错误 -v:可以显示原文件/压缩文件的压缩比 -l:列出压缩文件的相关信息 -#:#是数字,表示压缩的等级,1速度最快,但是压缩比低,9压缩比高,但是速度慢,默认值为6打包
列举一些常用的参数
-c:建立打包文件 -t:查看打包文件的内容 -x:解打包/解压缩,可搭配-C来指定目录 -z:通过gzip来压缩或解压缩,文件名最好是*.tar.gz -j:通过bzip2来压缩或解压缩,文件名最好是*.tar.bz2 -J:通过xz来压缩或解压缩,文件名最好是*.tar.xz -v:在压缩或解压缩的工程中,将正在处理的文件名显示出来 -f:后面加要处理的文件名 -C:指定解压缩的目录 -p:保留源数据的原本权限与属性 -P:保留绝对路径
在使用时多为组合参数
# 压缩 tar -jcvp -f name path tar -zcvp -f name path tar -Jcvp -f name path # 解压缩 tar -jxvp -f name tar -zxvp -f name tar -Jxvp -f name
查看打包文件内部的文件信息
使用-P参数打包,会保留绝对路径,即增加了根目录
将上面两个文件进行解压,并指定目录
首先要找到要单解包的文件,001.tar.gz中包含两个文件,将其中的txt文件取出来,取出来以后会放到001目录下
tar -zxvf 压缩包名称 要解压的文件名称打包时除去某些文件
tar -zcvp -f name --exclude=*** path
其中的过滤条件可以有多个
在打包时过滤001文件夹下的.gz文件,对比增加过滤条件与正常打包可以发现,*.gz文件未被打包
打包new.txt文件



