>[info] ### 命令介紹
Linux tar(英文全拼:tape archive )命令用于備份文件。
tar 是用來建立,還原備份文件的工具程序,它可以加入,解開備份文件內的文件。
>[info] ### 常用參數
tar的參數非常多,這里只列舉一些日常使用頻率比較高的。
```
-c :建立一個壓縮文件的參數指令(create 的意思);
-x :解開一個壓縮文件的參數指令(等同于extract)!
-t :查看 tarfile 里面的文件!
特別注意,在參數的下達中, c/x/t 僅能存在一個!不可同時存在!因為不可能同時壓縮與解壓縮。
-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?
-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?
-v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執行過程!
-f :使用檔名,請留意,在 f 之后要立即接檔名喔!不要再加參數!
例如使用『 tar -zcvfP tfile sfile』就是錯誤的寫法,要寫成
『 tar -zcvPf tfile sfile』才對喔!
-p :使用原文件的原來屬性(屬性不會依據使用者而變)
-P :可以使用絕對路徑來壓縮!
-N :比后面接的日期(yyyy/mm/dd)還要新的才會被打包進新建的文件中!
--exclude FILE:在壓縮的過程中,不要將 FILE 打包!
```
>[info] ### 常用命令
#### .tar
```
解包:tar zxvf FileName.tar
打包:tar czvf FileName.tar DirName
```
#### .gz
```
壓縮:gzip fileName
解壓:gunzip filename.gz ? 或者 gzip -d filename.gz
```
#### .tar.gz 和 .tgz
```
解壓:tar zxvf filename.tar.gz
壓縮:tar zcvf filename.tar.gz ?dirname
```
#### .bz2
```
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
```
壓縮:bzip2 -z FileName
#### .tar.bz2
```
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
```
#### .bz
```
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
```
#### .tar.bz
```
解壓:tar jxvf FileName.tar.bz
壓縮:tar jcvf FileName.tar.bzFileName
```
#### .Z
```
解壓:uncompress FileName.Z
壓縮:compress FileName
```
#### .tar.Z
```
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
```
#### .zip
```
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
```
#### .rar
```
解壓:rar a abc.rar file1
壓縮:rar e abc.rar
```
* * *
常用的格式 tar ,tar.gz,tar.bz2
tar ?參數 壓縮包名 ?解壓文件名
**獨立必有且只能有一個的參數:**
```
-c:解壓縮包;
-x:解壓縮包;
-t:查看內容;
-r:向壓縮包文件末尾追加文件;
-u:更新原壓縮包中的文件;
-f:使用包名稱
```
根據需要在壓縮或解壓時可選參數:
```
-z:有gzip屬性的;
-j:有bz2屬性的;
-Z:有compress屬性的;
-v:顯示所有過程;
-O:將文件解開到標準輸出
```
-C指定壓縮包解壓的位置?
```
tar -zxvf tar.gz. -C /tmp ?將tar.gz包解壓至/tmp目錄下
```
>[warning] 前提要求目錄必須要創建好