基礎命令學習目錄首頁html
好文連接:https://www.cnblogs.com/yinzhengjie/p/6247833.htmllinux
原文連接:https://www.cnblogs.com/ferryCaptain-cloud/p/7440200.htmlpost
功能說明:壓縮文件。學習
語 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工 做目錄>][-ll][-n <字 尾字符串>][-t <日 期時間>][-<壓 縮效率>][壓 縮文件][文件...][-i <範本樣式>][-x <範本樣式>]url
補充說明:zip是個使用普遍的壓縮程序,文件經它壓縮後會另外產生具 有".zip"擴展名 的壓縮文件。spa
參 數:操作系統
-A 調 整可執行的自動解壓縮文件。code
-b<工做目錄> 指 定暫時存放文件的目錄。htm
-c 替 每一個被壓縮的文件加上註釋。blog
-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 替 壓縮文件加上註釋。
-$ 保 存第一個被壓縮文件所在磁盤的卷冊名稱。
-<壓縮效率> 壓 縮效率是一個介於1-9的 數值。
例子
例1. 壓縮test.MYI
將/root/mcw_test/這個目錄下全部文件和文件夾打包爲當前目錄下的 mcw.zip:
zip -q -r mcw.zip /root/mcw_test
[root@xiaoma /root/xiaoma] test! #ls -F /root/mcw_test/ 1.sh ma.txt xiaoma_guohe/ 魔降風雲變.txt [root@xiaoma /root/xiaoma] test! #zip -q -r mcw.zip /root/mcw_test [root@xiaoma /root/xiaoma] test! #ls mcw.zip
若是在咱們在 /root/mcw_test/目錄下,能夠執行如下命令:
zip -d mcw.zip root/mcw_test/ma.txt
[root@xiaoma /root/mcw_test] test! #zip -q -r mcw.zip * [root@xiaoma /root/mcw_test] test! #ls -F 1.sh ma.txt mcw.zip xiaoma_guohe/ 魔降風雲變.txt
從壓縮文件 mcw.zip 中刪除文件 ma.txt
zip -d mcw.zip root/mcw_test/ma.txt
[root@xiaoma /root/mcw_test/mcw] test! #ls /root/mcw_test/ 1.sh ma.txt mcw mcw.zip xiaoma_guohe 魔降風雲變.txt [root@xiaoma /root/mcw_test/mcw] test! #zip -q -r mcw.zip /root/mcw_test/* [root@xiaoma /root/mcw_test/mcw] test! #zip -d mcw.zip root/mcw_test/ma.txt deleting: root/mcw_test/ma.txt [root@xiaoma /root/mcw_test/mcw] test! #unzip mcw.zip ;ls root/mcw_test/ Archive: mcw.zip inflating: root/mcw_test/1.sh creating: root/mcw_test/mcw/ extracting: root/mcw_test/mcw.zip creating: root/mcw_test/xiaoma_guohe/ extracting: root/mcw_test/魔降風雲變.txt 1.sh mcw mcw.zip xiaoma_guohe 魔降風雲變.txt
(1)將/etc目錄下的全部文件以及目錄進行壓縮,設置壓縮級別爲最高,保存到文件/opt/etc.zip。 [root@mylinux ~]# zip -r /opt/etc.zip /etc (2)將/var目錄中全部文件以及子目錄壓縮,除了「*.log」的文件,將壓縮文件保存到/opt目錄下。 [root@mylinux ~]#zip –r /opt/var.zip /var –x 「*.log」 (3)將上面/opt/etc.zip中的etc/passwd文件從壓縮包中刪除。 [root@mylinux ~]#zip /opt/etc.zip –d etc/passwd deleting: etc/passwd (4)修改了/etc/inittab文件,但願把更改信息更新到/opt/etc.zip包中。 [root@mylinux ~]#zip –u /opt/etc.zip /etc/inittab 若是/etc目錄下不少文件進行了修改或者增長了不少文件,就須要把/etc目錄下的所有信息更新到/opt/etc.zip文件。可使用如下命令: [root@mylinux ~]#zip –u /opt/etc.zip /etc/* 或者使用 [root@mylinux ~]# zip –ru /opt/etc.zip /etc 看出點玄機了嗎?在上例中,其實「/etc/*」就表明了/etc目錄下的全部文件以及子目錄,而這恰好是zip命令「-r」選項完成的功能。 (5)將/opt/etc.zip壓縮文件所有解壓到/etc目錄下,除了etc/inittab文件,而且在解壓過程當中若是出現相同的文件就直接進行覆蓋,不要求用戶確認。可使用如下命令: [root@mylinux ~]#unzip –o /opt/etc.zip –x etc/inittab –d /etc