点击上方“”,选择“”
做积极的人,而不是积极废人
来源|
在这篇文章中,我将总结Linux系统下边常见的几种压缩工具,包括它们的压缩命令、解压缩命令、特殊参数等linux常用命令,同时,我还将介绍打包命令tar,以及怎样将其与压缩命令同时使用。
Linux下边的命令主要有下边几个:
打包命令:
所谓打包,就是将一个文件、或者一堆文件打包成一个单一文件的过程。
这儿还须要说明一个术语:率。其估算公式是:(后文件容积)/(前文件容积)。
还有一点是:gzipbzip2xz这几个命令都只能对但一个文件做压缩,不能压缩一个目录,压缩目录须要通过tar配合这几个压缩命令来处理,或则使用zip命令
zip命令能提供的功能和tar十分类似,更详尽的使用方式使用tldrzip&tldrunzip来查看。
gzip会就地,也就是源文件会被文件代替。
压缩
gzip
执行完上述命令,会在当前目录下生成file_name.gz文件。
命令有个比较有用的参数:
gzip -v
解
gzip -d .gz
或则
gunzip .gz
会在当前目录下生成``,源压缩文件不在了。
默认情况下,bzip2命令也是就地,后源文件将会被取代。
使用方式和gzip基本一样,而且能提供更好的压缩率linux嵌入式开发,其实,付出的代价就是压缩时间更长。
bzip2
或则引入-v参数查看压缩率:
bzip2 -v
将在当前目录下生成.bz2文件。
解
bzip2 -d .bz2
或则
bunzip2 .bz2
默认情况下,xz命令也是就地压缩,原始文件将被覆盖。
使用方式和上面提及的gzipbzip2类似linux压缩一个文件夹,参数也几乎是一样的。
xz
或则加上-v参数查看压缩率:
xz -v
完后linux压缩一个文件夹,会在当前目录下生成.xz文件。
这时可以使用-l参数,来查看压缩前后的文件对比信息:
xz -l .xz
举个事例如下:
tanjuntao@mbp:~/Downloads$ xz -l ppt模板.pptx.xz
Strms Blocks Compressed Uncompressed Ratio Check Filename
1 1 124.7 KiB 135.5 KiB 0.920 CRC64 ppt模板.pptx.xz
tanjuntao@mbp:~/Downloads$
解
xz -d .xz
注意,在xz命令这儿,没有xunz这些命令哦。
zip命令和上面的gzipbzip2xz不一样,它压缩后不会覆盖原有的文件。
单个文件
zip .zip
或则加入-v参数,可以查看压缩率:
zip -v .zip
执行上述命令,将会在当前目录下新生成.zip文件,原有的``将继续保留。
多个文件
zip .zip a.txt b.txt c.txt
会将a.txt,b.txt,c.txt同时压缩到compresed.zip文件中。
目录:
zip -r dir.zip
解压缩
unzip .zip
tar命令的参数可以说是Linux里面最复杂且最不容易记忆的几个之一了,完整的tar命令的使用方式可以足够写另外一篇文章。在这儿,我主要将介绍tar命令最核心的参数。
先解释下tar的作用:tar是打包命令,也就是将一系列文件,或则某个文件夹,打包成单一文件。若果配合上面介绍的3种命令gzipbzip2xz(不包含zip),这么其可以完成打包+的功能。
tar执行完后,原有文件或则目录将保留。
下边先介绍tar最常用的参数:
只打包文件不压缩
打包单个或多个文件:
tar -cv -f target.tar a.txt b.txt c.txt d.txt
打包单个目录或则多个目录:
tar -cv -f target.tar dir1 dir2 dir3
同时打包文件和目录:
tar -cv -f target.tar dir1 dir2 a.txt b.txt c.txt
打包同时用gzip
tar -cvz -f target.tar.gz dir1 dir2 a.txt
打包同时使用bzip2压缩
tar -cvj -f target.tar.bz dir1 dir2 a.txt
打包同时使用xz
tar -cvJ -f target.tar.xz dir1 dir2 a.txt
查看
tar -tvz -f target.tar.gz
或则
tar -tvJ -f target.tar.xz
解包和解压缩
tar -xvz -f target.tar.gz
上述命令将会在当前目录下解,也就是target.tar.gz上面的文件会解到当前目录下。
假如要解压缩到指定目录怎样做呢?
使用-C参数:
tar -xvz -f target.tar.gz -C ~/test
上述命令,会将target.tar.gz上面的所有文件解压到~/test目录下。
总结下:tar命令可以将任意的文件和目录打包成一个单一文件,解时,默认是将tarball上面的所有文件倾倒在当前目录,假如须要倾倒到其它目录,使用-C参数。
END
假如读完认为有收获的话,欢迎点【好看】,关注【匠心零度】,查阅更多精彩历史!!!
让我“好看”