day 20 Linux文件压缩与打包
6.5 zip压缩工具
- #zip file.zip file ---#压缩文件,压缩后会保留原始文件
- 命令#yum install -y zip安 ---#安装zip压缩程序
- #unzip file.zip [-d] dir ---#解压缩文件,原目录下时由于存在原文件,根据需求选择是否替换或覆盖等。“-d”表示指定解压缩路径,不能更改解压缩之后的文件名
- #yum install -y unzip安装unzip解压缩程序
- #zip -r directory.zip directory ---#zip支持压缩目录,需要加“-r”,压缩后保留原目录
- #unzip -l directory.zip ---#查看压缩包里的文件列表
- tar [-z|-j|-J] [cv] [-f 待创建的新文件名] file1 [file2 dir1...] ---#打包与压缩文件或目录,打包后源文件依然保留
- tar [-z|-j|-J] [tv] [-f 已有的 tar文件名] ---#察看打包文件中的文件名
- tar [-z|-j|-J] [xv] [-f 已有的 tar文件名] [-C 目录] ---#解包与解压缩,解包后会覆盖原来的包文件,可用“-C”选项指定其他目录
选项与参数:
-c:
创建打包文件,可搭配 “-v” 来察看过程中被打包的文件名(filename)
-t
: 察看打包文件的内容含有哪些文件名,重点在察看“文件名”
-x:
解打包或解压缩,可以搭配 -C (大写) 在特定目录解开
注:-c, -t, -x 不可同时出现在一串命令行中
-z
:通过 gzip 的支持进行压缩/解压缩:此时文件名最好为 *.tar.gz
-j
:通过 bzip2 的支持进行压缩/解压缩:此时文件名最好为 *.tar.bz2
-J
:通过 xz 的支持进行压缩/解压缩:此时文件名最好为 *.tar.xz
注: -z, -j, -J 不可以同时出现在一串命令行中
-v :在压缩/解压缩的过程中,将正在处理的文件名显示出来
-f filename:-f 后面要立刻接要被处理的文件名,建议 “-f” 单独写一个选项
-C directory :用在解压缩,若要在特定目录解压缩,可以使用这个选项
-p:保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
-P:保留绝对路径,亦即允许备份数据中含有根目录存在之意
--exclude=FILE:在压缩的过程中,不要将 FILE 打包, 可使用通配符“*”过滤同一类型文件
#tar [-z|-j|-J] [cv] [-f file.tar] --exclude=FILE
file
查看打包文件时加“v”与不加“v”的区别,加“v”时能查看到详细信息
简单速记:
- 压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
- 查 询:tar -jtv -f filename.tar.bz2
- 解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录