Linux命令列歸檔工具
我們在本文中將探討標準Linux發行版上可供使用的歸檔工具、功能特性以及例項等。文章分上下兩部分,每個部分各自介紹了五款命令列歸檔工具(也就是說,總共介紹了十款最佳的Linux命令列工具)。
何謂歸檔檔案
歸檔檔案是經過壓縮的檔案,它由一個或多個計算機檔案以及後設資料組成。
歸檔的功能特性
- 資料壓縮
- 加密
- 檔案並置
- 自動解壓
- 自動安裝
- 源卷和介質資訊
- File spanning
- 校驗和
- 目錄結構資訊
- 其他後設資料(關於資料的資料)
- 錯誤發現
- 儲存計算機檔案系統以及後設資料。
- 適用於本地傳送檔案。
- 適用於通過網際網路傳送檔案。
- 軟體包裝應用程式。
1. tar命令
tar是標準的UNIX/Linux歸檔應用軟體工具。在早期階段,它曾經是一款磁帶歸檔軟體,後來慢慢發展成了通用歸檔軟體包,能夠處理各種型別的歸檔檔案。tar可接受許多帶選項的歸檔過濾器。
tar選項
- -A:將tar檔案新增到現有歸檔的末尾。
- -c:建立一個新的歸檔檔案。
- -d:使用指定的檔案系統比較歸檔。
- -j:用bzip壓縮歸檔。
- -r:將檔案新增到現有歸檔的末尾。
- -t:列出現有歸檔的內容。
- -u:更新歸檔。
- -x:從現有歸檔解壓檔案。
- -z:用gzip壓縮歸檔。
- –delete:從現有歸檔刪除檔案。
建立一個tar歸檔檔案。
# tar -zcvf name_of_tar.tar.gz /path/to/folder對tar歸檔檔案進行解壓縮。
# tar -zxvf Name_of_tar_file.tar.gz想了解更詳細的例子,請參閱《Linux下的18個Tar命令例項》一文:http://www.tecmint.com/18-tar-command-examples-in-linux/。
2. shar命令
shar代表外殼歸檔,這是一個外殼指令碼,執行該指令碼就可以建立文件。shar是自解壓歸檔檔案,這是一款老式實用工具,需要Unix Bourne外殼來解壓檔案。shar的優勢在於採用明文格式,不過它可能很危險,因為它輸出的是可執行檔案。
shar選項
- -o:將輸出儲存到選項中指定的歸檔文件。
- -l:限制選項中指定的輸出檔案大小,但不分割輸入檔案。
- -L:限制在選項中指定的輸出檔案大小,但分割輸入檔案。
- -n:歸檔名稱新增到shar檔案的頭部中。
- -a:允許自動生成檔案頭部。
shar例項
建立一個shar歸檔檔案。
# shar file_name.extension > filename.shar解壓shar歸檔檔案。
# unshar file_name.shar3. ar命令
ar是建立和處理歸檔的實用工具,主要用於二進位制物件檔案庫。ar代表歸檔工具,可用於歸檔任何用途的各種歸檔,但是基本上已被“tar”取而代之;現如今,它只用於建立和更新靜態庫檔案。
ar選項
- -d:從歸檔中刪除模組。
- -m:移動歸檔中的成員。
- -p:顯示歸檔的指定成員的內容。
- -q:快速新增。
- -r:將檔案成員插入到歸檔。
- -s:為歸檔新增索引。
- -a:將新檔案新增到歸檔的現有成員。
使用“ar”工具建立一個歸檔,靜態庫為“libmath.a”,兩個物件檔案為“substraction”和“division”,具體如下。
# ar cr libmath.a substraction.o division.o解壓“ar”歸檔檔案。
# ar x libmath.a4. cpio
cpio代表Copy in and out(拷貝輸入和輸出)。cpio是一款面向Linux的通用檔案歸檔工具。它被紅帽軟體包管理器(RPM)積極使用,用於Linux核心的initramfs(初始RAM檔案系統)中,還是蘋果公司的安裝工具(pax)中的一個重要歸檔工具。
cpio選項
- -0:讀取由空字元終止而不是由換行符終止的檔名列表。
- -a:復位訪問時間。
- -A:新增到現有歸檔。
- -b:交換。
- -d:建立目錄。
建立一個“cpio”歸檔檔案。
# cd tecmint # ls file1.o file2.o file3.o # ls | cpio -ov > /path/to/output_folder/obj.cpio解壓cpio歸檔檔案。
# cpio -idv < /path/to folder/obj.cpio5. gzip
gzip是一種標準的、廣泛應用的檔案壓縮和解壓縮實用工具。gzip允許檔案並置。用gzip壓縮檔案,可以得到格式為“*.tar.gz”或“*.tgz”的tarball打包檔案。
gzip選項
- –stdout:將輸出寫到標準輸出裝置上。
- –to-stdout:將輸出寫到標準輸出裝置上。
- –decompress:解壓縮檔案。
- –uncompress:解壓縮檔案。
- -d:解壓縮檔案。
- -f:強行壓縮/解壓縮。
建立一個“gzip”歸檔檔案。
# tar -cvzf name_of_archive.tar.gz /path/to/folder解壓縮“gzip”歸檔檔案。
# gunzip file_name.tar.gz執行上面這個命令後必須緊跟著執行下面這個命令。
# tar -xvf file_name.tar注意:由於gzip的架構和功能,很難恢復受損壞的用gzip處理的tar歸檔檔案。所以建議在不同的地方對用gzip處理的重要檔案做幾個備份。
英文:http://www.tecmint.com/command-line-archive-tools-for-linux/
相關閱讀
評論(3)