1.什么是归档?
归档就是将一些文件放在一起变成一个包,便于保存和传输,图片和视频数据因为不象文本一样,因此多个文件在压缩的时候没有明显效果,因此只能做归档,进行保存。
归档就相当于是打包,将自己所需要的一堆文件进行打成一个完整的包(不是文件夹,这个包是进不去的)
2.什么是压缩?
压缩也是一种打包,压缩的原理是将文件中相同的信息用一个字符代替,致使文件体积变小达到压缩的目的,压缩对于文本类或数据类文件有较明显的作用。
在归档之后对这个.tar进行压缩,会大大减小这个文件的大小。
归档命令:tar
多文件归档: tar [参数] 打包文件名 文件1 文件2
目录归档: tar [参数] 打包文件名 目录
tar命令很特殊,其参数前面可以使用“-”,也可以不使用。
常用参数:
参数 | 含义 |
---|---|
-c | 生成档案文件,创建打包文件 |
-v | 列出归档解档的详细过程,显示进度 |
-f | 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后 |
-t | 列出档案中包含的文件 |
-x -C | 解开档案文件 解压到指定目录:-C (大写字母“C”) |
注意:除了f需要放在参数的最后,其它参数的顺序任意。
文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [选项] 被压缩文件 (压缩过的名称)
如:gzip -r xx.tar xx.tar.gz
gzip -d xx.tar.gz 解压
常用选项:
选项 | 含义 |
---|---|
-d -r | 解压 压缩所有 |
例:
注意:tar与gzip可以一体化
文件压缩解压:bzip2
压缩:bzip2 filename ---> 删除filename文件,生成 filename.bz2
解压缩:bzip2 -d filename.bz2 ---> 删除filename.bz2 ,生成 filename文件
注意:1)上述方式压缩后不保留源文件,解压后不保留压缩文件
2)bzip2 支持批量操作:
bzip2 a.txt b.txt 同时压缩两个文件
bzip2 -d a.txt.bz2 b.txt.bz2 同时解压两个文件
另外:
tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz2。
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar -jcvf 压缩包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解压用法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.bz2)
注意:上述方式压缩后保留源文件,解压后保留压缩文件
文件压缩解压:zip、unzip
通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
压缩文件:zip [-r] 压缩文件(可以没有扩展名) 源文件
zip -r a.zip a 把a目录压缩为 a.zip
解压文件:unzip 压缩文件
unzip a.zip 把a.zip 解压到当前目录下
解压文件:unzip -d 解压后目录文件 压缩文件
unzip -d test a.zip 把a.zip 解压到 test 目录中
注意:tar.gz 的打包和压缩方式 相比 zip 或者 bz2 产生的压缩包文件更小