linux 归档和压缩

linux shell

zip 格式并不适linux上使用 ,Windows上的zip包拿到Linux上unzip解压会乱码。

而 tar 格式可以。而 tar 本身不提供压缩,无非就是把包括所有文件的內容和权限拼成一个文件而己,所以用另外如 gzip 格式压缩。为什么是 gzip,因为几乎所有 linux 都支持而已。

如果你的压缩包只在 linux 上用,则使用 tar 没错。

打包文件夹

tar [参数] [打包后的目录或文件(以.tar结尾)] [打包前的目录或源文件]
例:tar -cvf demo.tar demo
参数含义
-c做打包操作,可将多个文件或目录进行打包
-v显示打包过程
-f后接包名(必须要写)指明要打包的目录或源文件的名称

解包

tar [参数] [包名称]
例:tar -xvf abc.tar
解压到指定目录:tar -xvf abc.tar -C test/

参数含义
-x做解打包操作
-v显示解打包过程
-f后接包名(必须要写)指明要解打包的tar包的包名
-t查看tar包中有哪些文件或目录,不做解打包操作
-C(大写)指定解打包的具体位置

打包的同时进行压缩

常用参数及含义如下表所示:

参数含义
-z一步压缩和解压缩 “.tar.gz” 格式
-j一步压缩和解压缩 “.tar.bz2″格式
tar -zcvf demo.tar.gz demo
tar -jcvf abc.tar.bz2 abc
# 注意参数z与j及压缩包的后缀名