通常在桌面系统中可以通过GUI直接进行压缩和解压缩,但是服务器中只能通过命令进行操作,这里根据《鸟哥的Linux私房菜》整理一下常见的压缩和解压命令备查。
linux中的压缩文件类型
*.zip zip程序压缩的文件;
*.gz gzip程序压缩的文件;
*.bz2 bzip2程序压缩的文件;
*.xz xz程序压缩的文件;
*.tar tar程序打包的数据,并没有压缩过;
*.tar.gz tar程序打包的文件,并且经过 gzip 的压缩
*.tar.bz2 tar程序打包的文件,并且经过 bzip2 的压缩
*.tar.xz tar程序打包的文件,并且经过 xz 的压缩
这里介绍常用的.zip、.gz和.bz2文件的压缩、查看和解压缩。
zip
win下zip是最常用的压缩文件格式
zip -rv xxx.zip xxx # 循环压缩并查看压缩信息
unzip xxx.zip [-d ./] # 解压(-d指定解压路径)
unzip -v xxx.zip # 查看文件结构且不解压
unzip -t xxx.zip # 测试是否损坏且不解压
unzip -t xxx.zip # 测试是否损坏且不解压
gzip
用于分别(解)压缩文件,同时替换原文件
gzip * # 将当前目录下的非文件夹分别压缩
gzip -vr * # 循环压缩当前目录下的文件,并显示信息
gzip -dvr * # 循环解压当前目录下的压缩文件,并显示信息
zcat命令可以输出压缩文件的内容
bzip2
用于分别(解)压缩文件,同时替换原文件,该命令似乎不能循环处理选定目录中的文件。
bzip2 [-z] * # 压缩当前目录下的文件,-z选项可以不要
bzip2 -zk * # 压缩文件并保留原文件
bzip2 -dv * # 解压当前目录下的压缩文件,并显示信息
bzcat命令可以输出压缩文件的内容
tar
用于(解)打包并可选(解)压缩若干文件
(-c-t-x) # 三选一,分别用于打包(压缩)、查看、解打包(压缩)
(-j-z) # 二选一或无,用于可选bzip2或gzip处理
-v # 查看过程信息
-f file # 最好单独列出,用于指定压缩文件名
-C dir # 用于指定【解压缩】目录
例:
tar -cv -f hh.tar * # 仅打包不压缩
tar -cjv -f hh.tar.bz2 * # bz2压缩
tar -xjv -f hh.tar.bz2 -C ./ # bz2解压到当前目录