Linux菜鸟笔记——文件与目录的压缩与打包

一、压缩命令[compress/gzip/bzip2]:

压缩只能对文件,不能对目录,目录要先打包,然后再压缩。


(1)compress


(2)gzip

1、压缩文件

gzip hosts			#将hosts压缩成hosts.gz,不保留原文件
gzip -c hosts > xx/hosts.gz	#将hosts压缩成hosts.gz,保留原文件,还可以指定路径


2、查看压缩文件内容

zcat hosts.gz


3、解压

gzip -d hosts.gz		#不指定路径的解压,解压到当前目录下、不保留压缩文件
gzip -d -c hosts.gz > xx/hosts	#指定路径的解压,同时保留压缩文件


(3)bzip

1、压缩文件

bzip2 hosts.bz2 		#将hosts压缩成hosts.bz2,不保留原文件
bzip2 -c hosts > xx/hosts.bz2	#将hosts压缩成hosts.gz,保留原文件,还可以指定路径


2、查看压缩文件内容

bzcat hosts.bz2


3、解压

bzip2 -d hosts.bz2			#不指定路径的解压,解压到当前目录下、不保留压缩文件
bzip2 -d -c hosts.bz2 > xx/hosts	#指定路径的解压,同时保留压缩文件


总结:

-c:指定路径、保留文件

-d:解压

gzip、bzip2默认不保留原文件/压缩文件。



二、打包/压缩命令[tar]

2.1 打包/解包:

(1)打包单个文件

tar cvf aa.tar aa			#默认保留原文件
tar cvf aa.tar aa --remove-file		#打包后删除原文件


(2)打包多个文件

tar cvf ab.tar aa bb			#默认保留原文件
tar cvf aa.tar aa bb --remove-file	#打包后删除原文件


(3)查看包里的内容

tar tvf aa.tar


(4)解包

tar xvf aa.tar				#不指定路径的解包,解包到当前目录下
tar xvf aa.tar -C xx/aa			#指定路径的解包



2.2 打包并压缩/解压并解包:

以gzip格式

(1)打包单个文件并压缩

tar zcvf aa.tar.gz aa			#保留原文件
tar zcvf aa.tar.gz aa --remove-file	#不保留原文件


(2)打包多个文件并压缩

tar zcvf ab.tar.gz aa bb		#保留原文件
tar zcvf ab.tar.gz aa bb --remove-file	#不保留原文件


(3)解压

tar zxvf ab.tar.gz		#不指定路径解压、解包
tar zxvf ab.tar.gz -C xx/ab	#指定路径解压、解包


以bizp2格式

(1)打包单个文件并压缩

tar jcvf aa.tar.bz2 aa			#保留原文件
tar jcvf aa.tar.bz2 aa --remove-file	#不保留原文件


(2)打包多个文件并压缩

tar jcvf ab.tar.bz2 aa bb		#保留原文件
tar jcvf ab.tar.bz2 aa bb --remove-file	#不保留原文件

(3)解压

tar jxvf ab.tar.bz2		#不指定路径解压、解包
tar jxvf ab.tar.bz2 -C xx/ab	#指定路径解压、解包


总结:

-C:指定路径

--remove-file:删除原文件

tar命令默认保留原文件。


你可能感兴趣的:(Linux学习笔记)