一、基本概念

打包和压缩细分的话可以分为以下四类:

1.打包

将多个文件或者目录包成一个大文件。

2.解包

即打包的反向操作:将一个打包好的文件解成多个文件或者目录。

3.压缩

将大型文件通过某种技术使其在磁盘的容量变小。

4.解压缩

即压缩的反向操作:将小文件变大。

当然,在实际的操作过程中打包压缩是同时结合使用的,解包和解压缩是同时使用的。

二、tar命令参数

tar的命令参数非常多,可以使用man tar命令查询。

-c  :建立打包檔案,可搭配 -v 來察看過程中被打包的檔名(filename)
-t  :察看打包檔案的內容含有哪些檔名,重點在察看『檔名』就是了;
-x  :解打包或解壓縮的功能,可以搭配 -C (大寫) 在特定目錄解開
      特別留意的是, -c, -t, -x 不可同時出現在一串指令列中。
-z  :透過 gzip  的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.gz
-j  :透過 bzip2 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.bz2
-J  :透過 xz    的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.xz
      特別留意, -z, -j, -J 不可以同時出現在一串指令列中
-v  :在壓縮/解壓縮的過程中,將正在處理的檔名顯示出來!
-f filename:-f 後面要立刻接要被處理的檔名!建議 -f 單獨寫一個選項囉!(比較不會忘記)
-C 目錄    :這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。

其他後續練習會使用到的選項介紹:
-p(小寫) :保留備份資料的原本權限與屬性,常用於備份(-c)重要的設定檔
-P(大寫) :保留絕對路徑,亦即允許備份資料中含有根目錄存在之意;
--exclude=FILE:在壓縮的過程中,不要將 FILE 打包! 

三、操作分类

1.打包压缩(习惯性简称为压缩):

tar  -jcv -f filename.tar.bz2 要被压缩的文件或者目录名称;

注:j表示通过bzip2的方式进行压缩。

2.查询(查看打包后的文件有哪些内容):

tar -jtv -f filename.tar.bz2 

3.解包解压缩(习惯性称为解压缩)

tar -jxv -f filename.tar.bz2 -C 欲解压的目录;

参考资料

[1]鸟哥私房菜,第八章、檔案與檔案系統的壓縮,打包與備份:http://linux.vbird.org/linux_basic/0240tarcompress.php

Logo

更多推荐