Linux-tar
1. tar簡介
2. tar文件
3. tar經常使用選項
4. tar基本用法(不壓縮)
5. tar特殊用法app
https://zh.wikipedia.org/wiki/Tar
Unix和類Unix系統上的壓縮打包工具,能夠將多個文件合併爲一個文件,打包後的文件名亦爲「tar」。目前,tar文件格式已經成爲POSIX標準,最初是POSIX.1-1988,目前是POSIX.1-2001。本程序最初的設計目的是將文件備份到磁帶上(tape archive),於是得名tar。工具
tar表明未壓縮的tar文件。已壓縮的tar文件則附加壓縮文件的擴展名,如通過gzip壓縮後的tar文件,擴展名爲「.tar.gz」。
因爲受到DOS8.3文件名格式的限制,常使用下列縮寫:測試
tar選項 | 縮寫後綴 | 完整後綴 | 壓縮命令 | 解壓命令1 | 解壓命令2 |
-j, | *.tb2; tbz | *.tar.bz2; *.tar.bz | bzip2 -z | bzip2 -d | bunzip2 |
-z, | *.tgz | *.tar.gz | gzip | gzip -d | gunzip |
-Z, | *.taz | *.tar.Z | compress | uncompress | |
-J, | *.txz | *.tar.xz | |||
--lzma | *.tlz | *.tar.lzma |
主要操做方式:spa
-c, | --create | 建立一個新的存檔 |
-t, | --list | 列出檔案的內容 |
-x, | --extract, --get | 從存檔中提取文件 |
-r, | --append | 將文件附加到存檔的末尾 |
-u, | --update | 只附加比歸檔中的副本更新的文件 |
-A, | --catenate, --concatenate | 將tar文件做爲總體追加到另外一個tar文件中 |
-d, | --diff, --compare | 找到存檔和文件系統之間的差別 |
--delete | 從檔案中刪除(不在磁帶上!) | |
--test-label | 測試存檔卷標並退出 |
壓縮選項:設計
-j, | --bzip2 | 經過bzip2過濾存檔 |
-z, | --gzip, --gunzip, --ungzip | 經過gzip過濾存檔 |
-Z, | --compress, --uncompress | 經過壓縮過濾存檔 |
-J, | --xz | 經過xz過濾存檔 |
--lzma | 經過lzma過濾存檔 | |
--lzip | 經過lzip過濾存檔 | |
--lzop | 經過lzop過濾存檔 | |
--zstd | 經過zstd過濾存檔 | |
-a, | --auto-compress | 使用存檔後綴來肯定壓縮程序 |
--no-auto-compress | 不要使用存檔後綴來肯定壓縮程序 |
其餘經常使用選項:orm
Device selection and switching: | ||
-f, | --file=ARCHIVE | 使用存檔文件或設備存檔. 能夠用"-"表明標準輸出或標準輸入。 |
Informative output: | ||
-v, | --verbose | 詳細列出已處理的文件 |
Overwrite control: | ||
-k, | --keep-old-files | 提取時不要替換現有文件,將它們視爲錯誤 |
Local file selection: | ||
-P, | --absolute-names | 不要從文件名中刪除前導'/'。即絕對路徑。 |
不壓縮
-c 打包 $ tar -cvf archive.tar file1 file2
-t 查看 $ tar -tvf archive.tar
-x 解包 $ tar -xvf archive.tar
增長壓縮,只須要參照上面的選項,添加對應的壓縮選項便可。ip
使用tar複製文件夾
$ tar cf – toma | (cd targer; tar xvf -)
高效的複製了toma中的文件和目錄,還保留了權限。注: 'f'後邊跟'-',從stdin讀取數據.
解開C源碼包的注意事項
軟件源碼包,一般是tar的壓縮包。解包前先用tvf選項+壓縮選項檢查源碼包內容。
1. 有些源碼包解開時不會創建本身的總目錄,會把所有放到當前目錄下。這種要進入手動創建的文件夾後再解包。
2. 要留意那些包含絕對路徑名的文件。可能包含木馬或一些惡意代碼。
ci