linux系统中针对不同的文件,有不同的压缩命令。
本文对常见压缩和解压命令进行总结
zip文件
1.1.unzip解压单个文件
unzip 命令可以查看和解压缩 zip 文件。该命令的基本格式如下:
unzip filename.zip
(文件后可添加压缩相关参数)
-d 目录名 将压缩文件解压到指定目录下。
-n 解压时并不覆盖已经存在的文件。
-o 解压时覆盖已经存在的文件,并且无需用户确认。
-v 查看压缩文件的详细信息,包括压缩文件中包含的文件大小、文件名以及压缩比等,但并不做解压操作。
-t 测试压缩文件有无损坏,但并不解压。
-x 文件列表 解压文件,但不包含文件列表中指定的文件。
1.2.unzip解压一个文件下的批量(所有).zip文件
数据格式 1:
(在当前路径下执行)解压命令:
sudo unzip '*.zip'
解压批量zip文件到当前文件夹,解压后压缩文件与解压后文件在同一目录下
运行过程1
运行过程2
压缩文件到指定位置
sudo unzip '*.zip' -d /mnt/sda1/
tar文件
2.1.tar处理文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
命令组合使用:
tar -cf all.tar *.jpg
#将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
tar -rf all.tar *.gif
#将所有.gif的文件增加到all.tar的包里面去。-r表示增加文件。
tar -uf all.tar logo.gif
#更新原来tar包all.tar中logo.gif文件,-u表示更新文件。
tar -tf all.tar
#列出all.tar包中所有文件,-t是列出文件
tar -xf all.tar
# 解出all.tar包中所有文件,-t是解开
2.2.tar压缩
tar -cvf jpg.tar *.jpg
#将目录里所有jpg文件打包成jpg.tar
tar -czf jpg.tar.gz *.jpg
#将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar -cjf jpg.tar.bz2 *.jpg
#将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar -cZf jpg.tar.Z *.jpg
#将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg
#rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg
#zip格式的压缩,需要先下载zip for linux
2.3.tar解压缩
tar -xvf file.tar
#解压 tar包
tar -xzvf file.tar.gz
#解压tar.gz
tar -xjvf file.tar.bz2
#解压 tar.bz2
tar -xZvf file.tar.Z
#解压tar.Z