码迷,mamicode.com
首页 > 其他好文 > 详细

文件目录压缩tar zip

时间:2020-03-28 23:51:35      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:直接   strong   格式   bz2   链接   通用   归档   contain   zip   

压缩包,解压和压缩

格式 压缩工具
.zip zip压缩工具
.gz gzip压缩工具,只能压缩文件,会删除源文件(通常配合tar使用)
.bz2 bzip2压缩工具,只能压缩文件,会删除源文件(通常配合tar使用)
.tar.gz 先使用tar命令归档打包,然后使用gzip压缩
.tar.bz2 先使用tar命令归档打包,然后使用bzip压缩
#针对压缩包的压缩失败,可能是没有安装相关安装包,yum安装即可,或者可以使用yum provides进行查看
# gzip 压缩命令
Usage: gzip [OPTION]... [FILE]...
1.gzip 只能压缩文件,不能压缩目录
2.gzip 压缩文件之后,源文件会消失
3.gzip 解压文件后,压缩包会消失
4.gzip 压缩文件,后面可以跟多个文件名,但是会分别压缩一个包
5.使用zcat可以直接查看压缩包中文件内容
6.打包的文件在哪个路径下,然后就把包放在源文件所在的目录中

# 单个文件压缩
[root@localhost ~]# gzip file1

# 多个文件压缩
[root@localhost ~]# gzip file2 file3

# 解压
[root@localhost ~]# gzip -d file1.gz

# 查看文件类型
[root@localhost ~]# file file1.gz
#zip 压缩命令
Usage:zip [option] [filename] [file]...
1.zip 压缩文件,源文件不会消失
2.zip 解压后,如果目录下存在和压缩包内相同的文件名,则询问是否覆盖
3.zip 压缩目录,什么参数都不加的情况下,只能打包空目录,如果想要打包目录下所有内容加 -r参数
4.如果打包的是绝对路径,那么会把绝对路径的内容都打包进去,并且删除/,打包,在哪个目录下执行,就会打包到哪个目录下

zip 行李箱 衣服...
-r:递归打包
-q:不输出打包过程

# 打包单个文件
[root@localhost ~]# zip f.zip file1

# 打包多个文件
[root@localhost ~]# zip f.zip file1 file8

# 打包目录
[root@localhost ~]# zip -r zls_dir.zip /root/zls_dir
# tar 归档
用法: tar [选项...] [FILE]...

c:创建新的归档文件(create)
x:解压归档文件
f:指定包文件名(行李箱),如果是多个选项,f一定要放在最后
v:显示过程
z:归档之后使用gzip压缩
P:不删/ ,使用绝对路径打包
t:查看压缩包中的压缩项目
C:指定解压路径
j:
J:
h:打包软链接
X:将要排除的目录或者文件,写到文件中,然后使用X指定该文件,即可排除
--exclude:直接写要排除的文件或者目录

例:

压缩gzip文件

# gzip包的压缩只针对文件,并且对源文件压缩,源文件会自动消失,这里以压缩文件为演示
[root@oldboy tmp]# echo ‘123456789‘>123.txt
[root@oldboy tmp]# gzip 123.txt
[root@oldboy tmp]# ll
total 4
-rw-r--r-- 1 root root 38 Mar 28 22:30 123.txt.gz

解压gzip文件

[root@oldboy tmp]# gzip -d 123.txt.gz 
[root@oldboy tmp]# ll
total 4
-rw-r--r-- 1 root root 10 Mar 28 22:30 123.txt

打包并压缩文件或者目录为.tar.gz包

[root@oldboy /]# tar -zcf tmp.tar.gz /tmp
tar: Removing leading `/‘ from member names
[root@oldboy /]# du -sh tmp.tar.gz		#查看当前压缩包的大小
4.0K	tmp.tar.gz

解压tar.gz包

[root@oldboy /]# tar xf tmp.tar.gz -C /tmp		#解压文件并且指定路径,xf命令是tar包通用
[root@oldboy /]# ll /tmp
total 4
-rw-r--r-- 1 root root  10 Mar 28 22:30 123.txt
drwxrwxrwt 7 root root 108 Mar 28 22:33 tmp

压缩bz2包

[root@oldboy /]# tar jcf 666.tar.bz2 /tmp		#更换参数j即可
tar: Removing leading `/‘ from member names
[root@oldboy /]# file 666.tar.bz2				#查看文件类型,
666.tar.bz2: bzip2 compressed data, block size = 900k

压缩解压xz包

[root@oldboy /]# tar Jcf log.tar.xz /var/log	#打包xz包
[root@oldboy /]# file log.tar.xz 				#查看文件类型
log.tar.xz: XZ compressed data
[root@oldboy /]# tar xf log.tar.xz -C /tmp		#指定解压路径,这个命令对于tar包是通用的都能进行解压
[root@oldboy /]# tar tf log.tar.xz				#xz包的内容同样使用tf可以进行查看

zip包压缩解压

[root@oldboy /]# zip -r tmp01.zip /tmp			#对目录压缩成zip包 -r是针对目录,不加则是针对文件
[root@oldboy /]# unzip tmp01.zip				#解压zip包
Archive:  tmp01.zip							#提示,因为我解压也是在当前目录底下,提示是否进行覆盖
replace tmp/123.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: 

文件目录压缩tar zip

标签:直接   strong   格式   bz2   链接   通用   归档   contain   zip   

原文地址:https://www.cnblogs.com/tcy1/p/12590080.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!