Linux系统常见有三种压缩文件的工具,如下所述:
tar
Linux系统自带两个压缩工具gzip与bzip2,对应的解压工具为gunzip与bunzip2。gzip与bzip2都只能压缩单个文件,不能压缩目录,默认压缩或解压缩操作都会删除原文件,压缩文件后的文件名后缀分别为.gz与.bz2。
由于gzip与bzip2的功能十分局限,因此实际上一般使用tar命令进行压缩,tar的本质是归档(即打包),压缩功能实质是调用gzip或者bzip2工具。
压缩:tar -zcvf 压缩后的文件名 需压缩的文件夹
或者 tar -jcvf 压缩后的文件名 需压缩的文件夹
。z表示使用gzip压缩工具,j表示使用bzip2压缩工具,c表示create,v表示verbosity,即展示压缩过程,f表示使用档案文件或者设备。压缩文件名最好加后缀.tar.gz 或者 .tar.bz2。因为Linux系统中压缩文件是普通文件类型,若不指定后缀,将难以识别压缩文件,且对解压工作带来困难。
解压:tar -zxvf 压缩文件 [--directory PATH]
或者 tar -jxvf 压缩文件 [--directory PATH]
, x表示extract, 默认解压到当前路径,可指定–direcory或者-C 指定解压到特定的目录。
zip
压缩:zip -r 压缩文件名 被压缩文件夹
, 需指定参数r,否则不会递归压缩。
解压: unizp 压缩文件 -d path
, -d参数指定解压到指定的路径。
rar(需要安装软件)
压缩: rar a -r 压缩文件名 被压缩文件
解压:unrar x file.rar