1、名詞區分
打包:將一大堆文件或目錄變成一個總的文件【tar命令】
壓縮:將一個大的文件通過一些壓縮算法變成一個小文件【gzip,bzip2等】
Linux中很多壓縮程序只能針對一個文件進行壓縮,這樣當你想要壓縮一大堆文件時,你得將這一大堆文件先打成一個包(tar命令),然后再用壓縮程序進行壓縮(gzip?bzip2命令)。
2、tar語法
語法:tar [主選項+輔選項] 文件或目錄
使用該命令時,主選項必須有,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。
主選項:【一條命令以下5個參數只能有一個】
-c: --create 新建一個壓縮文檔,即打包
-x: --extract,--get解壓文件
-t: --list,查看壓縮文檔里的所有內容
-r:--append 向壓縮文檔里追加文件
-u:--update 更新原壓縮包中的文件
輔助選項:
-z:是否同時具有gzip的屬性?即是否需要用gzip壓縮或解壓?一般格式為xxx.tar.gz或xx.tgz
-j:是否同時具有bzip2的屬性?即是否需要用bzip2壓縮或解壓?一般格式為xx.tar.bz2
-v:顯示操作過程!這個參數很常用
-f:使用文檔名,注意,在f之后要立即接文檔名,不要再加其他參數!
-C:切換到指定目錄
--exclude FILE:在壓縮過程中,不要將FILE打包
二、例子
1、打包
習慣上以.tar后綴代表tar包,用xxx.tar.gz或.tgz代表gzip壓縮過的tar文件,用.tar.bz2代表bzip2壓縮過的tar文件。
將img1和img2兩個文件夾打包成img.tar,僅打包不壓縮
tar -cvf img.tar img1 img2
將img1和img2兩個文件夾打包成img.tar.gz,打包后,以gzip壓縮
tar -zcvf img.tar.gz img1 img2
2、不解壓的情況下查看
查看img.tar中的所有內容
test$ tar -tf img.tar
查看img.tar.gz的所有內容
加-v參數查看詳細信息,-z可有可無
tar -tf img.tar.gz
三、解壓方法總結
1、*.tar 用tar –xvf 解壓
2、*.gz 用 gzip -d或者gunzip 解壓
3、*.tar.gz和*.tgz 用tar –xzf 解壓
4、*.bz2 用 bzip2 -d或者用bunzip2 解壓
5、*.tar.bz2用tar –xjf 解壓
6、*.Z 用 uncompress 解壓
7、*.tar.Z 用tar –xZf 解壓
8、*.rar 用 unrar x 解壓
9、*.zip 用 unzip 解壓