【Linux】压缩与解压缩

原文:https://zhuanlan.zhihu.com/p/33026265

本文总结tar、zip与unzip的使用,适用于Linux\Unix,包括Mac OS,下面统称Unix。这是张cheat sheet,我自己老是记不清压缩与解压缩的命令,每次用的时候都要现查,现在索性把常用的整理到一块,方便查询使用。

我们假设有一个文件demo.mp4和一个文件夹videos,下面以他们为例压缩与解压缩文件。

用tar压缩可以选择多种格式,不指定格式的话只是把多个文件打包成一个完整的文件,大小是不压缩的。其他三个格式gzip、bzip2、xz (lzma2)可以把文件压缩的更小,后缀通常分别是tar.gz、tar.bz2、tar.xz。gzip比较快,bzip2和xz可以把文件压得更小但更慢。我测试了一些文件,发现xz压缩的文件是最小的。

 

压缩单个文件

# -c意思是create,-f是生成的文件名,后接需要压缩的文件或文件夹
# -z -j -J分别代表gzip bzip2 xz三种压缩的格式
tar -cf demo.mp4.tar demo.mp4
tar -czf demo.mp4.tar.gz demo.mp4
tar -cjf demo.mp4.tar.bz2 demo.mp4
tar -cJf demo.mp4.tar.xz demo.mp4

压缩文件夹

# -c -f意思同上
# -z -j -J分别代表gzip bzip2 xz三种压缩的格式
tar -cf videos.tar videos
tar -czf videos.tar.gz videos
tar -cjf videos.tar.bz2 videos
tar -cJf videos.tar.xz videos

解压缩

解压缩就是把选项-c替换成-x,如下

# -x意思是extract,-f是被解压缩的文件
# -z -j -J分别代表gzip bzip2 xz三种格式
tar -xf videos.tar
tar -xzf videos.tar.gz
tar -xjf videos.tar.bz2
tar -xJf videos.tar.xz

不过比较方便的是,可以不用指定压缩算法选项,如下

tar -xf videos.tar
tar -xf videos.tar.gz
tar -xf videos.tar.bz2
tar -xf videos.tar.xz

Zip与Unzip

zip和unzip的用法跟tar稍有不同

压缩文件或视频

zip demo.mp4.zip demo.mp4
zip -r videos.zip videos # 压缩文件夹需要加-r

解压缩

解压缩比较直观,直接命令接文件名就行了

unzip demo.mp4.zip
unzip videos.zip

 

posted @ 2019-05-05 10:10  zheng1076  阅读(151)  评论(0编辑  收藏  举报