码迷,mamicode.com
首页 > 系统相关 > 详细

在Linux下对文件或者目录进行打包压缩

时间:2018-04-23 15:53:10      阅读:291      评论:0      收藏:0      [点我收藏+]

标签:compress   self   com   linu   删除   details   路径   alt   clip   

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

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

 

(1)compress

 

(2)gzip

1、压缩文件

 

[cpp] view plain copy
 
  1. gzip hosts          #将hosts压缩成hosts.gz,不保留原文件  
  2. gzip -c hosts > xx/hosts.gz  #将hosts压缩成hosts.gz,保留原文件,还可以指定路径  

 

2、查看压缩文件内容

 

[cpp] view plain copy
 
  1. zcat hosts.gz  

 

3、解压

 

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

 

(3)bzip

1、压缩文件

 

[cpp] view plain copy
 
  1. bzip2 hosts.bz2         #将hosts压缩成hosts.bz2,不保留原文件  
  2. bzip2 -c hosts > xx/hosts.bz2    #将hosts压缩成hosts.gz,保留原文件,还可以指定路径<span style="font-size:18px;">  
  3. </span>  

 

2、查看压缩文件内容

 

[cpp] view plain copy
 
  1. bzcat hosts.bz2  

 

3、解压

 

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

总结:

 

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

-d:解压

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

 

 

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

2.1 打包/解包:

(1)打包单个文件

 

[cpp] view plain copy
 
  1. tar cvf aa.tar aa           #默认保留原文件  
  2. tar cvf aa.tar aa --remove-file     #打包后删除原文件  

 

(2)打包多个文件

[cpp] view plain copy
 
  1. tar cvf ab.tar aa bb            #默认保留原文件  
  2. tar cvf aa.tar aa bb --remove-file  #打包后删除原文件  

 

(3)查看包里的内容

[cpp] view plain copy
 
  1. tar tvf aa.tar  

 

(4)解包

[cpp] view plain copy
 
  1. tar xvf aa.tar              #不指定路径的解包,解包到当前目录下  
  2. tar xvf aa.tar -C xx/aa         #指定路径的解包  

 

 

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

 

以gzip格式

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

[cpp] view plain copy
 
  1. tar zcvf aa.tar.gz aa           #保留原文件  
  2. tar zcvf aa.tar.gz aa --remove-file #不保留原文件  

 

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

[cpp] view plain copy
 
  1. tar zcvf ab.tar.gz aa bb        #保留原文件  
  2. tar zcvf ab.tar.gz aa bb --remove-file  #不保留原文件  

 

(3)解压

[cpp] view plain copy
 
  1. tar zxvf ab.tar.gz      #不指定路径解压、解包  
  2. tar zxvf ab.tar.gz -C xx/ab #指定路径解压、解包  

 

以bizp2格式

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

[cpp] view plain copy
 
  1. tar jcvf aa.tar.bz2 aa          #保留原文件  
  2. tar jcvf aa.tar.bz2 aa --remove-file    #不保留原文件  

 

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

[cpp] view plain copy
 
  1. tar jcvf ab.tar.bz2 aa bb       #保留原文件  
  2. tar jcvf ab.tar.bz2 aa bb --remove-file #不保留原文件  

(3)解压

[cpp] view plain copy
 
  1. tar jxvf ab.tar.bz2     #不指定路径解压、解包  
  2. tar jxvf ab.tar.bz2 -C xx/ab    #指定路径解压、解包  


总结:

-C:指定路径

--remove-file:删除原文件

tar命令默认保留原文件。

在Linux下对文件或者目录进行打包压缩

标签:compress   self   com   linu   删除   details   路径   alt   clip   

原文地址:https://www.cnblogs.com/hopelooking/p/8918890.html

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