一、tar命令
命令格式:tar 選項 /路徑/壓縮包名 被歸檔壓縮的數據
參數
-C 切換到指定目錄
-c create產生打包(必選)
-v 顯示打包的詳細過程
-f filename 指定打包后的文件名,后跟目標地址
-j 支持bzip2解壓文件
-J 將文件打包成xz格式(速度最慢,文件最小)
-x從壓縮的文件提取文件
-z支持gzip解壓文件
例子:
將文件打包並壓縮(以 gzip 壓縮):
注:將test目錄打包成tar.test.gz包
tar -zcvf test.tar.gz test(打包的目錄)#

將文件打包但不壓縮:
tar -cvf xxx.tar.gz test/(打包的目錄)
將文件打包並壓縮(以 bzip2 壓縮):
tar -jcvf xxx.tar.bz2 test/(打包的目錄)
解壓bz2壓縮包
# tar -xf userbin.tar.bz2
將多個文件同時打包並壓縮:
tar -zcvf xxx.tar.gz dir1 dir2 dir3 (3個dir文件)
將文件解壓縮到當前目錄:
tar -zxvf xxx.tar.gz #解壓到當前目錄
將文件解壓縮到指定 /home/test 目錄:
tar -zxvf xxx.tar.gz -C /home/test
查看壓縮包內容
# tar -tf tar.userbin.gz
查看壓縮包內容並將其數量進行統計
tar -tf userbin.tar.gz | wc -l
二、ZIP命令
參數
-q 不顯示指令執行過程。
-r 遞歸處理,將指定目錄下的所有文件和子目錄一並處理。
-d 從壓縮文件內刪除指定的文件。
-v 顯示指令執行過程或顯示版本信息。
舉例:
如何抑制 unzip 命令的輸出
默認情況下, unzip 命令打印它提取的所有文件的名稱以及提取完成時的摘要。
使用 -q 選項可禁止打印這些消息。
unzip -q filename.zip
將 ZIP 文件解壓縮到其他目錄
要將 ZIP 文件解壓縮到 /home/test 的目錄中,請使用該 -d 選項。
unzip filename.zip -d /home/test
解壓縮 ZIP 文件時如何排除文件
在以下示例中,我們將從 ZIP 存檔中提取除 .file 目錄之外的所有文件和目錄:
unzip filename.zip -x "*.file/*"
使用解壓縮時如何覆蓋現有文件
如果要在不提示的情況下覆蓋現有文件,請使用 -o 選項:
unzip -o filename.zip
請謹慎使用此選項。文件將被覆蓋,如果您對文件進行了任何更改,則更改將丟失。
如何在不覆蓋現有文件的情況下解壓縮 ZIP 文件
假設已經解壓縮了一個 ZIP 文件,並且對某些文件進行了更改,但是您不小心刪除了一些文件。您希望保留更改並從 ZIP 存檔中還原已刪除的文件。
在這種情況下,您要使用 -n 選項來跳過已存在的文件的提取。
unzip -n filename.zip
如何解壓縮多個 ZIP 文件
解壓當前目錄下多個zip文件
unzip '*.zip'
如何列出 Zip 文件的內容
unzip -l filename.zip
三、7z命令
參數
a 代表添加文件 / 文件加到壓縮包
b 指定壓縮類型,7za默認壓縮類是7z
r 遞歸所有子文件夾
舉例
d 從壓縮檔案刪除文件。
從archive.zip中刪除所有的bak文件。
7z d filename.zip *.bak -r
l 列出壓縮檔案內容。
列出壓縮檔案 filename.zip 的內容。
7z l filename.zip
t 測試壓縮檔案文件的完整性。
在壓縮檔案 filename.zip 中測試 *.doc 文件的完整性。
7z t filemane.zip *.doc
u 在壓縮檔案文件中使用較新的文件替換掉較舊的文件。
在壓縮檔案 filename.zip 中更新 *.doc 文件。
7z u filename.zip *.doc
解壓舉例
x 解壓縮文件,按原始目錄樹解壓
-r 表示遞歸解壓縮所有子文件
-o 指定解壓到的目錄 -o后無空格,直接跟解壓到的目錄
7za x filename.7z -r -o./
