Linux上使用最多的压缩格式是 zip 和 tar.gz 。Linux上的压缩格式放在windows系统下都可以正常打开
Linux不支持 Windows下的 RAR 格式的压缩文件。Windows和Linux互通通常选择 zip
gzip格式
# 仅对文件有效,对文件夹无效,压缩有文件删除,解压后压缩包删除 yum install gzip -y#先安装 gzip file #对文件进行压缩 zcat file.gz #查看gz压缩后的文件 gzip -d file.gz #解压gzip的压缩包 #使用场景:当需要让某个文件不生效时,快速关闭和启用配置文件 cd /etc/yum.repos.d/ gzip * gzip CentOS-Vault.repo --> CentOS-Vault.repo.gz zcat CentOS-Vault.repo.gz --> 查看不想解压的压缩包文件内容
#先安装 yum install zip unzip -y #1.压缩文件为zip包 # zip 压缩表名 压缩的文件 zip filename.zip filename # 打包不通目录下的不通文件 zip filename1.zip file1 file2 /etc/hosts #2.压缩目录为zip包 (不加r,只会打包一个文件夹) zip -r dir.zip dir/ #3.查看zip压缩包是否是完整的 zip -T filename.zip test of filename.zip OK #4.不解压压缩查看压缩包中的内容 unzip -l filename.zip unzip -t filename.zip #5.解压zip文件包, 默认解压至当前目录 unzip filename.zip #6.解压zip内容至/opt目录 unzip filename.zip -d /opt/
tar打包与压缩
#语法:tar [-zjxcvfpP] filename c #创建新的归档文件 x #对归档文件解包 t #列出归档文件里的文件列表 v #输出命令的归档或解包的过程 f #指定包文件名,多参数f写最后 z #使用gzip压缩归档后的文件(.tar.gz) j #使用bzip2压缩归档后的文件(.tar.bz2) J #使用xz压缩归档后的文件(tar.xz) C #指定解压目录位置 X #排除多个文件(写入需要排除的文件名称) h #打包软链接 --hard-dereference #打包硬链接 --exclude #在打包的时候写入需要排除文件或目录 #常用打包与压缩组合 czf #打包tar.gz格式 常用 cjf #打包tar.bz格式 不怎么用 cJf #打包tar.xz格式 不考虑 zxf #解压tar.gz格式 jxf #解压tar.bz格式 xf #自动选择解压模式 xvf #显示解压过程 tf #查看压缩包内容
#1.以gzip归档方式打包并压缩 tar czf test.tar.gz test/ test2/ #2.以bz2方式压缩 tar cjf test.tar.bz2 dir.txt dir/ #3.打包链接文件,打包链接文件的真实文件 cd / tar czfh local.tar.gz etc/rc.local #4.打包/tmp下所有文件 cd / find tmp/ -type f | xargs tar czf tmp.tar.gz #5.打包/tmp下所有文件 tar czf tmp.tar.gz $(find /tmp/ -type f)
#1.排除单个文件 tar czf etc.tar.gz --exclude=etc/services etc/ #2.排除多个文件 tar czf etc.tar.gz --exclude=etc/services --exclude=etc/rc.local etc/ #3.将需要排除的文件写入文件中 cat paichu.list etc/services etc/rc.local etc/rc.d/rc.local #指定需要排除的文件列表, 最后进行打包压缩 tar czfX etc.tar.gz paichu.list etc/
#查看压缩包内容和解压 tar tf test.tar.gz
#1.解压至当前目录 tar xf test.tar.gz #2.将解压内容存储至指定的/tmp目录 tar xf /etc/local.tar.gz -C /tmp