linux初学者笔记(10):压缩命令
常用压缩格式:.zip .gz .bz2 .tar.gz .tar.bz2
①.zip
压缩文件:
zip 压缩文件名 源文件
压缩目录
zip -r 压缩文件名 源目录
注意:
压缩文件名不一定是要.zip后缀,因为linux是不区分扩展名的,这样子写是方便以后要解压缩的时候知道用什么解压缩
奇怪的是压缩之后的文件比压缩前地要大,这是为什么?这是由于压缩格式带来的问题,压缩文件只有在一定大小下才能显示出优势,但是文件太小就不行了。
这种格式可以再windows下使用
zip解压缩
unzip 压缩文件
②.gz格式压缩
gzip 源文件 #压缩为.gz格式的,源文件会消失
gzip -c 源文件 > 压缩文件 #压缩为.gz格式的,源文件保留
gzip -r 目录 #压缩目录下所有子文件,但是不能压缩目录
补充知识:关于大括号>,在这里其实是把命令的结果写入指定文件中
解压缩
gunzip 压缩文件
③.bz2格式压缩
bzip2 源文件 #不保留源文件
bzip2 -k 源文件 #保留源文件
注意,这个命令不能压缩目录
解压缩
bzip2 -d 源文件
bunzip2 源文件
加上-k可以保留压缩文件
④.tar.gz和.tar.bz2格式压缩
tar打包命令,这个可以解决不能压缩目录的问题
tar -cvf 打包文件名 源文件
-c 打包
-v 显示过程
-f 指定打包后的文件名
解包
-x选项
看到这里,想必大家都知道怎么回事了,其实要把文件压缩成.tar.gz和.tar.bz2格式,就是先做了tar打包,然后再进行gzip或者bzip2来压缩
但是这样子的话比较麻烦。没错,有一步到位的方法
直接tar.gz
tar -zcvf 压缩文件名.tar.gz 源文件
tar -zxvf 压缩文件名.tar.gz
直接.tar.bz2
tar -jcvf 压缩文件名.tar.bz2 源文件
tar -jxvf 压缩文件名.tar.bz2
(这里不截图,都是一样的东西)
把文件压缩到指定目录下
把文件解压到指定目录下 -C 指定目录
只是看看这个压缩包有什么 -t