Linux 解壓縮
阿新 • • 發佈:2018-02-23
說明 是個 新增 uid date fail 系統 concat 結果
我們知道在Windows下最常見的壓縮文件就只有兩種,一是,zip,另一個是.rar。可是Linux就不同 了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等眾多的壓縮文件名,此外windows下的.zip和.rar也可以在Linux下使 用,不過在Linux使用.zip和.rar的人就太少了。而且Linux中的很多壓縮程序只能針對一個文件進行壓縮,這樣當你想要壓縮一大堆文件時,你就得先借助另外的工具將這一大堆文件先打 成一個包,然後再就原來的壓縮程序進行壓縮。
Linux下最常用的打包程序就是tar了,使用tar程序打出來的包我們常稱為tar包,tar包文件的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程序來進行壓縮了,所以首先就來講講tar命令。
tar
語法
tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b <區塊數目>][-C <目的目錄>][-f <備份文件>][-F <Script文件>][-K <文件>][-L <媒體容量>][-N <日期時間>][-T <範本文件>][-V <卷冊名稱>][-X <範本文件>][-<設備編號><存儲密度>][--after-date=<日期時間>][--atime-preserve][--backuup=<備份方式>][--checkpoint][--concatenate][--confirmation][--delete][--exclude=<範本樣式>][--force-local][--group=<群組名稱>][--help][--ignore-failed-read][--new-volume-script=<Script文件>][--newer-mtime][--no-recursion][--null][--numeric-owner][--owner=<用戶名稱>][--posix][--erve][--preserve-order][--preserve-permissions][--record-size=<區塊數目>][--recursive-unlink][--remove-files][--rsh-command=<執行指令>][--same-owner][--suffix=<備份字尾字符串>][--totals][--use-compress-program=<執行指令>][--version][--volno-file=<編號文件>][文件或目錄...]
選項
對象 | 說明 |
---|---|
-A或--catenate | 新增文件到以存在的備份文件; |
-B | 設置區塊大小; |
-c或--create | 建立新的備份文件; |
-C <目錄> | 這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。 |
-d | 記錄文件的差別; |
-x或--extract或--get | 從備份文件中還原文件; |
-t或--list | 列出備份文件的內容; |
-z或--gzip或--ungzip | 通過gzip指令處理備份文件; |
-Z或--compress或--uncompress | 通過compress指令處理備份文件; |
-f<備份文件>或--file=<備份文件> | 指定備份文件; |
-v或--verbose | 顯示指令執行過程; |
-r | 添加文件到已經壓縮的文件; |
-u | 添加改變了和現有的文件到已經存在的壓縮文件; |
-j | 支持bzip2解壓文件; |
-v | 顯示操作過程; |
-l | 文件系統邊界設置; |
-k | 保留原有文件不覆蓋; |
-m | 保留文件不被覆蓋; |
-w | 確認壓縮文件的正確性; |
-p或--same-permissions | 用原來的文件權限還原文件; |
-P或--absolute-names | 文件名使用絕對名稱,不移除文件名稱前的“/”號; |
-N <日期格式> 或 --newer=<日期時間> | 只將較指定日期更新的文件保存到備份文件裏; |
--exclude=<範本樣式> | 排除符合範本樣式的文件。 |
實例
tar -jtv -f filename.tar.bz2 # 查 詢
tar –xvf file.tar # 解壓 tar包
tar -xzvf file.tar.gz -C 欲解壓縮的目錄 # 解壓tar.gz
tar -xjvf file.tar.bz2 # 解壓 tar.bz2
tar –xZvf file.tar.Z # 解壓tar.Z
zip
zip命令可以用來解壓縮文件,或者對文件進行打包操作。zip是個使用廣泛的壓縮程序,文件經它壓縮後會另外產生具有“.zip”擴展名的壓縮文件。
語法
zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目錄>][-ll][-n <字尾字符串>][-t <日期時間>][-<壓縮效率>][壓縮文件][文件...][-i <範本樣式>][-x <範本樣式>]
選項
對象 | 說明 |
---|---|
-A | 調整可執行的自動解壓縮文件。 |
-b<工作目錄> | 指定暫時存放文件的目錄。 |
-c | 替每個被壓縮的文件加上註釋。 |
-d | 從壓縮文件內刪除指定的文件。 |
-D | 壓縮文件內不建立目錄名稱。 |
-f | 此參數的效果和指定"-u"參數類似,但不僅更新既有文件,如果某些文件原本不存在於壓縮文件內,使用本參數會一並將其加入壓縮文件中。 |
-F | 嘗試修復已損壞的壓縮文件。 |
-g | 將文件壓縮後附加在既有的壓縮文件之後,而非另行建立新的壓縮文件。 |
-h | 在線幫助。 |
-i<範本樣式> | 只壓縮符合條件的文件。 |
-j | 只保存文件名稱及其內容,而不存放任何目錄名稱。 |
-J | 刪除壓縮文件前面不必要的數據。 |
-k | 使用MS-DOS兼容格式的文件名稱。 |
-l | 壓縮文件時,把LF字符置換成LF+CR字符。 |
-ll | 壓縮文件時,把LF+CR字符置換成LF字符。 |
-L | 顯示版權信息。 |
-m | 將文件壓縮並加入壓縮文件後,刪除原始文件,即把文件移到壓縮文件中。 |
-n<字尾字符串> | 不壓縮具有特定字尾字符串的文件。 |
-o | 以壓縮文件內擁有最新更改時間的文件為準,將壓縮文件的更改時間設成和該文件相同。 |
-q | 不顯示指令執行過程。 |
-r | 遞歸處理,將指定目錄下的所有文件和子目錄一並處理。 |
-S | 包含系統和隱藏文件。 |
-t<日期時間> | 把壓縮文件的日期設成指定的日期。 |
-T | 檢查備份文件內的每個文件是否正確無誤。 |
-u | 更換較新的文件到壓縮文件內。 |
-v | 顯示指令執行過程或顯示版本信息。 |
-V | 保存VMS操作系統的文件屬性。 |
-w | 在文件名稱裏假如版本編號,本參數僅在VMS操作系統下有效。 |
-x<範本樣式> | 壓縮時排除符合條件的文件。 |
-X | 不保存額外的文件屬性。 |
-y | 直接保存符號連接,而非該連接所指向的文件,本參數僅在UNIX之類的系統下有效。 |
-z | 替壓縮文件加上註釋。 |
-$ | 保存第一個被壓縮文件所在磁盤的卷冊名稱。 |
實例
將 /home/html/ 這個目錄下所有文件和文件夾打包為當前目錄下的 html.zip:
zip -q -r html.zip /home/html
如果在我們在 /home/html 目錄下,可以執行以下命令:
zip -q -r html.zip *
從壓縮文件 cp.zip 中刪除文件 a.c
zip -dv cp.zip a.c
unzip
用於解壓縮zip文件
語法
unzip [-cflptuvz][-agCjLMnoqsVX][-P <密碼>][.zip文件][文件][-d <目錄>][-x <文件>] 或 unzip [-Z]
選項
對象 | 說明 |
---|---|
-c | 將解壓縮的結果顯示到屏幕上,並對字符做適當的轉換。 |
-f | 更新現有的文件。 |
-l | 顯示壓縮文件內所包含的文件。 |
-p | 與-c參數類似,會將解壓縮的結果顯示到屏幕上,但不會執行任何的轉換。 |
-t | 檢查壓縮文件是否正確。 |
-u | 與-f參數類似,但是除了更新現有的文件外,也會將壓縮文件中的其他文件解壓縮到目錄中。 |
-v | 執行是時顯示詳細的信息。 |
-z | 僅顯示壓縮文件的備註文字。 |
-a | 對文本文件進行必要的字符轉換。 |
-b | 不要對文本文件進行字符轉換。 |
-C | 壓縮文件中的文件名稱區分大小寫。 |
-j | 不處理壓縮文件中原有的目錄路徑。 |
-L | 將壓縮文件中的全部文件名改為小寫。 |
-M | 將輸出結果送到more程序處理。 |
-n | 解壓縮時不要覆蓋原有的文件。 |
-o | 不必先詢問用戶,unzip執行後覆蓋原有文件。 |
-P<密碼> | 使用zip的密碼選項。 |
-q | 執行時不顯示任何信息。 |
-s | 將文件名中的空白字符轉換為底線字符。 |
-V | 保留VMS的文件版本信息。 |
-X | 解壓縮時同時回存文件原來的UID/GID。 |
-d<目錄> | 指定文件解壓縮後所要存儲的目錄。 |
-x<文件> | 指定不要處理.zip壓縮文件中的哪些文件。 |
-Z | unzip -Z等於執行zipinfo指令。 |
實例
unzip -l file.zip #查看壓縮文件中包含的文件
unzip -v file.zip #查看壓縮文件目錄信息,但是不解壓該文件
unzip -n file.zip -d 欲解壓的目錄 # 解壓文件
Linux 解壓縮