一、 zip压缩工具
可以用来压缩文件和目录,压缩目录是需要指定目录下的文件。
[root@davery tmp]# cp 1.txt davery/
[root@davery tmp]# du -sh davery/
4.0K davery/
[root@davery tmp]# yum inistall -y zip
已加载插件:fastestmirror
没有该命令:inistall。请使用 /usr/bin/yum --help
[root@davery tmp]# yum install -y zip
..
压缩文件
[root@davery tmp]# zip 2.txt.zip 6.txt 错误
zip warning: name not matched: 6.txt
zip error: Nothing to do! (2.txt.zip)
[root@davery tmp]#
[root@davery tmp]# zip 2.txt.zip 2.txt 正确
adding: 2.txt (deflated 75%)
[root@davery tmp]#
[root@davery tmp]# du -sh 2.txt.zip
320K 2.txt.zip
[root@davery tmp]#
压缩目录
[root@davery tmp]# zip -r -davery.zip 2.txt davery 错误
zip error: Invalid command arguments (short option 'a' not supported)
[root@davery tmp]# zip -r davery.zip 2.txt davery 正确
adding: 2.txt (deflated 75%)
adding: davery/ (stored 0%)
adding: davery/1/ (stored 0%)
adding: davery/1/2/ (stored 0%)
adding: davery/1.txt (deflated 57%)
[root@davery tmp]#
安装unzip
[root@davery tmp]# yum install -y unzip
[root@davery tmp]# unzip davery.zip
Archive: davery.zip
replace 2.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
inflating: 2.txt
replace davery/1.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
inflating: davery/1.txt
[root@davery tmp]#
[root@davery tmp]#
[root@davery tmp]# unzip 2.txt.zip -d test/
Archive: 2.txt.zip
inflating: test/2.txt
[root@davery tmp]#
[root@davery tmp]# unzip 2.txt.zip -d test/aa.txt 不能指向文件名,压缩前后文件名不做更改
Archive: 2.txt.zip
inflating: test/aa.txt/2.txt
[root@davery tmp]#
[root@davery tmp]# unzip -l davery.zip 只能查看文件列表,不能看文件内容
Archive: davery.zip
Length Date Time Name
--------- ---------- ----- ----
1296516 04-03-2018 20:29 2.txt
0 04-03-2018 20:44 davery/
0 03-28-2018 22:19 davery/1/
0 03-28-2018 22:20 davery/1/2/
889 04-03-2018 20:44 davery/1.txt
--------- -------
1297405 5 files
[root@davery tmp]#
二、tar打包
-z:表示同时使用gzip压缩
-j:表示同时使用bzip2压缩
-J:表示同时使用xz压缩
-x:表示解包或解压
-t:查看包里文件
-c:表示创建一个tar包或者压缩文件包
-v:表示可视化
-f:后边跟文件名(-f filename,表示压缩后的文件名为filename)
[root@davery tmp]# tar -cvf davery.tar davery/ 压缩打包目录,再次打包就覆盖
davery/
davery/1/
davery/1/2/
davery/1.txt
[root@davery tmp]#
[root@davery tmp]# tar -xvf davery.tar 解包目录
davery/
davery/1/
davery/1/2/
davery/1.txt
[root@davery tmp]#
[root@davery tmp]# tar -cvf davery.tar davery 2.txt 打包目录加文件
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]#
[root@davery tmp]# tar -tf davery.tar 查看打包
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]#
[root@davery tmp]# tar -vcf davery.tar --exclude davery davery 2.txt 过滤davery目录
2.txt
[root@davery tmp]#
[root@davery tmp]# tar -vcf davery.tar --exclude davery --exclude "*.txt" davery 2.txt 过滤davery目录 和txt文件
[root@davery tmp]# 因为tmp除了txt没有其他文件,则为空
三、打包并压缩
[root@davery tmp]# tar -czvf davery.tar.gz davery 2.txt 打包时并用gzip压缩
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]# du -sh davery.tar.gz 2.txt 查看
320K davery.tar.gz
1.3M 2.txt
[root@davery tmp]#
[root@davery tmp]# tar -tf davery.tar.gz 解包
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]# tar -cjvf davery.tar.bz2 davery 2.txt 打包时并用bzip2压缩
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]# du -sh davery.tar.bz2 2.txt查看
132K davery.tar.bz2
1.3M 2.txt
[root@davery tmp]#
[root@davery tmp]# tar -tf davery.tar.bz2解包
davery/
davery/1/
davery/1/2/
davery/1.txt
2.txt
[root@davery tmp]#