1. 程式人生 > >zip命令常用選項

zip命令常用選項

文件的 更新 之前 部署 tool 不存在 使用 所有 文件中

大家都知道,在linux上一切皆文件,在實際生產環境中,如果我們需要部署一些系統的服務,我們會將一些軟件包提前下載下來統一放到一個文件夾中,

然後將部署的過程用shell或者python寫成一個腳本,當我們在一個裸機上部署一個服務的時候,就只需要執行腳本,然後你去喝上一杯咖啡,回來的時候服

務就已經部署好了。哈哈~以上的都不是重點,重點是存放腳本和軟膠包的目錄,那麽如何把這個目錄下載下來呢?你可能會用tar,zip等工具去操作,我工作

中常用的是tar,來讓我們一起學習一下zip的使用方法吧~

語法:zip [參數] [打包後的文件名] [打包的目錄路徑]

1.參數:-r ,將指定的目錄下的所有子目錄以及文件一起處理

[[email protected] yinzhengjie]# zip -r tools.zip tools > zip.log

技術分享圖片

2.參數:-q,安靜模式,在壓縮的時候不顯示指令的執行過程

[[email protected] yinzhengjie]# zip -q -r tools01.zip tools

技術分享圖片

3.參數:-P,加密壓縮,解壓的時候會詢問密碼

技術分享圖片

好了,偷偷告訴你,我常用的就這3種,其他的選項還有很多,我就不一一例舉啦~我百度了一些中文的資料,關於zip參數的說明,如果您覺得有所不妥,建議用([[email protected] yinzhengjie]# zip -h2)用這個命令就查看幫助,我偷偷的秒了一眼,發現這個命令的功能不僅僅我列出來的這麽點~有興趣的朋友可以研究一下的喲~

常用參數:

-r 遞歸,將指定目錄下的所有文件和子目錄一並處理

-S 包含系統和隱藏文件

-y 直接保存符號連接,而非該連接所指向的文件

-X 不保存額外的文件屬性

-m 將文件壓縮並加入壓縮文件後,刪除源文件

-<壓縮級別> 1~9,數字越大,壓縮率越高

-F 嘗試修復已損壞的壓縮文件

-T 檢查備份文件內的每個文件是否正確無誤

-q 不顯示指令執行過程

-g 將文件壓縮後附加在既有的壓縮文件之後,而非另行建立新的壓縮文件

-u 更新壓縮包內文件

-f 更新壓縮包內文件。如果符合條件的文件沒有包含在壓縮包中,則壓縮後添加

-$ 保存第一個被壓縮文件所在磁盤的卷標

-j 只保存文件名稱及其內容

-D 壓縮文件內不建立目錄名稱

-i <表達式> 壓縮目錄時,只壓縮符合條件的文件

-x <表達式> 排除符合條件的文件

-n <文件名後綴> 排除指定文件名後綴的文件

-b <緩存路徑> 指定臨時文件目錄

-d <表達式> 從壓縮文件內刪除指定的文件

-t <日期時間> 把壓縮文件的日期設成指定的日期

-o 以壓縮文件內擁有最新更改時間的文件為準,將壓縮文件的更改時間設成和該文件相同

-A 調整可執行的自動解壓縮文件

-c 替每個被壓縮的文件加上註釋

-z 替壓縮文件加上註釋

-k 使用MS-DOS兼容格式的文件名稱。

-l 壓縮文件時,把LF字符置換成LF+CR字符。

-ll 壓縮文件時,把LF+CR字符置換成LF字符。

上面我門學習了zip的用法,那麽怎麽知道我們是否真的就壓縮成功了呀?我們需要一個命令查看:unzip

語法:unzip [參數] <壓縮文件> [壓縮包中將被釋放的文件]

1.參數:-d,解壓到制定的目錄,該目錄可以是不存在的喲

[[email protected] yinzhengjie]# unzip -q -n tools -d zip

技術分享圖片

檢查類容是否一致:

技術分享圖片

2.參數:-P,後面需要跟著你之前加密的密碼,其實這個參數也沒有卵用。我測試了換一下別的密碼也是可以解開的。

技術分享圖片

關於unzip的參數:

-P <密碼> zip壓縮包的密碼

-d <路徑> 指定解壓路徑

-n 解壓縮時不覆蓋原有文件

-f 覆蓋原有文件

-o 不經詢問,直接覆蓋原有文件

-u 覆蓋原有文件,並將壓縮文件中的其他文件解壓縮到目錄中

-l 顯示壓縮文件內所包含的文件

-t 檢查壓縮文件是否正確

-z 顯示壓縮包註釋

-Z unzip -Z等於執行zipinfo指令

-j 不處理壓縮文件中原有的目錄路徑

-C 壓縮文件中的文件名稱區分大小寫

-L 將壓縮文件中的全部文件名改為小寫

-s 將文件名中的空格轉換下劃線

-X 解壓縮時保留文件原來的UID/GID

-q 執行時不顯示任何信息

-v 執行是時顯示詳細的信息

-c 將解壓縮的結果顯示到屏幕上,並對字符做適當的轉換

-p 與-c參數類似,會將解壓縮的結果顯示到屏幕上,但不會執行任何的轉換

-a 對文本文件進行必要的字符轉換

-b 不要對文本文件進行字符轉換

-x <表達式> 處理裏排除壓縮包中的指定文件

-M 將輸出結果送到more程序處理

zip命令常用選項