linux所有文件打包压缩,Linux文件打包和压缩命令总结

每次在linux解压文件都要去网上查一次,因为记不住后面跟的参数(原因还是不理解这些参数的意思)。所以总结解压命令。

tar命令

首先,tar是一个打包工具,并不是一个压缩工具,tar的压缩功能是调用了别的工具来实现的。

tar命令的用法是 tar [function] [option] pathname。其中必须选择一个function,相当于是指定tar的任务。function可以用简写首字母,可以与后面的option混用(所以之前我都不知道有个function的存在,以为都是option)。所有的function支持见下表。比如说,如果要创建一个归档文件,就用tar -c,如果是从归档中提取文件,就是tar -x。

FUNCTION LETTERS

Main operation mode:

-A, –catenate, –concatenate

append tar files to an archive

-c, –create

create a new archive

-d, –diff, –compare

find differences between archive and file system

–delete

delete from the archive (not on mag tapes!)

-r, –append

append files to the end of an archive

-t, –list

list the contents of an archive

–test-label

test the archive volume label and exit

-u, –update

only append files newer than copy in archive

-x, –extract, –get

extract files from an archive

然后是options,其中有一个option(-f)是必须的,就是指定使用的归档。而且这个参数后面需要跟一个文件名字,所以一般都把它放在tar的最后一个参数上。例如打包文件的命令就是tar -cf new.tar。其中第一个c是函数名,可以和后面的option组合。文件名的后缀是为了好识别,不加也可以(推荐加,不然你就不知道一个文件是文件还是归档了)。

常用的参数如下:

-p或–same-permissions:用原来的文件权限还原文件

-v:列出处理过的文件,显示运行过程还是挺好的

-j, –bzip2:后缀是.bz2形式的压缩

-J, –xz:后缀是xz形式的压缩

-z, –gzip:后缀是gz形式的压缩

综上,打包一个文件的命令就是:tar -cvzf file.tar.gz dir,解压文件的命令就是tar -xvf file.tar.gz。

我有一点不理解的是,网上的解压命令基本上都是带-z参数的,即tar -xzvf file.tar.gz,但是我尝试了一下不指定解压器也是能工作的,不知道为什么网上都这么说。到论坛问了一下,原来之前版本的tar是不能自动识别压缩编码的,现在已经可以自动识别了,不需要加zjJ任何参数了。

解压以前需要指定压缩格式,现在新版本不需要,加不加 -a 参数都会自动判断格式

所以对于 gz 格式的解压,在新版 tar 上,以下命令全部等价

tar -zxf

tar zxf

tar -xf

tar xf

tar -axf

tar axf

不过,规范一点更好,写脚本的时候,统一使用 tar -zxf 或者 tar -axf 这些参数,免得出 bug

所以还是用Linux比较晚……会遇到一些奇奇怪怪的问题……

zip文件的压缩和解压

另一种跨平台的压缩格式是.zip。这种格式的文件相关的命令是zip和unzip。通过下面几个例子了解一下,用的时候查man就可以。

递归压缩 zip -r yasuo.zip abc.txt dir1

解压 unzip yasuo.zip

查看压缩文件内的内容,但是不解压 unzip -v large.zip

验证下载文件的正确性 unzip -t large.zip

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值