zip
可以用來解壓縮文件
補充說明
zip命令 可以用來解壓縮文件,或者對文件進行打包操作。zip是個使用廣泛的壓縮程序,文件經它壓縮後會另外產生具有“.zip”擴展名的壓縮文件。
語法
1zip(選項)(參數)
2zip [-選項] [-b 路徑] [-t 日期] [-n 後綴名] [壓縮文件列表] [-xi 列表]
選項
1-f: 刷新:僅更改的文件
2-u: 更新:僅更改或新文件
3-d: 刪除 zip 文件中的條目
4-m: 移至 zip 文件(刪除操作系統文件)
5-r: 遞歸到目錄
6-j: 垃圾(不記錄)目錄名
7-0: 僅存儲
8-l: 將 LF 轉換爲 CR LF (-ll CR LF 到 LF)
9-1: 壓縮速度更快
10-9: 壓縮得更好
11-v: 詳細操作/打印版本信息
12-q: 安靜運行
13-c: 添加一行註釋
14-z: 添加 zip 文件註釋
15-@: 從標準輸入讀取名稱
16-o: 使 zip 文件與最新條目一樣舊
17-x: 排除以下名稱
18-i: 僅包含以下名稱
19-F: 修復 zip 文件(-FF 更加努力)
20-D: 不添加目錄條目
21-A: 調整自解壓exe
22-D: 不添加目錄條目
23-T: 測試 zip 文件的完整性
24-X: 排除額外的文件屬性
25-n: 不壓縮這些後綴
26-e: 加密
27-y: 將符號鏈接存儲爲鏈接而不是引用的文件
28-h2: 顯示更多幫助
參數
- zip壓縮包:指定要創建的zip壓縮包;
- 文件列表:指定要壓縮的文件列表。
實例
壓縮單個文件,這會將 file.txt
文件壓縮到名爲 compressed.zip
的歸檔文件中
1zip compressed.zip file.txt
壓縮多個文件,下面這個命令會把 file1.txt
,file2.txt
,和 file3.txt
壓縮到一個叫做 compressed.zip
的歸檔文件中。
1zip compressed.zip file1.txt file2.txt file3.txt
壓縮整個目錄,下面這個命令 -r
參數表示遞歸壓縮,該命令將壓縮 folder
目錄及其所有子目錄和文件
1zip -r compressed.zip folder/
使用最大壓縮比壓縮文件,下面這個命令 -9
參數指定了最大壓縮比,儘管可能需要更長的處理時間
1zip -9 compressed.zip file.txt
創建密碼保護的 zip 文件,下面這個命令 -e
參數會提示用戶輸入密碼以創建加密的 zip 文件。
1zip -e secure.zip file.txt
只壓縮新文件或已更改的文件,如果 compressed.zip
已存在,-u
參數會更新歸檔中的 file.txt
或將其添加至歸檔中(如果它是新的)
1zip -u compressed.zip file.txt
壓縮文件但不保留目錄結構,-j
參數將不保留 file.txt
的父目錄 folder
,文件在 zip 中的位置將是在根目錄下
1zip -j compressed.zip folder/file.txt
將/home/Blinux/html/
這個目錄下所有文件和文件夾打包爲當前目錄下的 html.zip
:
1zip -q -r html.zip /home/Blinux/html
上面的命令操作是將絕對地址的文件及文件夾進行壓縮,以下給出壓縮相對路徑目錄,比如目前在Bliux這個目錄下,執行以下操作可以達到以上同樣的效果:
1zip -q -r html.zip html
比如現在我的html目錄下,我操作的zip壓縮命令是:
1zip -q -r html.zip *
壓縮 example/basic/
目錄內容到 basic.zip
壓縮包中 -x
指定排除目錄,注意沒有雙引號將不起作用。
1zip -r basic.zip example/basic/ -x "example/basic/node_modules/*" -x "example/basic/build/*" -x "example/basic/coverage/*"
上面壓縮解壓出來,內容存放在 example/basic/
, 如果想存放到根目錄,進入目錄進行壓縮,目前沒有找到一個合適的參數來解決此問題。
1cd example/basic/ && zip -r basic.zip . -x "node_modules/*" -x "build/*" -x "coverage/*"
壓縮效率選擇:
1zip -9 # 1-9 faster->better
創建 public_html
目錄下忽略所有文件和文件夾,排除包括文本 backup
的所有文件。
1$ zip -r public_html.zip public_html -x *backup*
httpdocs
目錄忽略 .svn
文件或 git
的文件和目錄下創建所有文件的歸檔。
1$ zip -r httpdocs.zip httpdocs --exclude *.svn* --exclude *.git*
httpdocs
目錄忽略的所有文件,並與 .log
結尾的目錄下創建所有文件的歸檔。
1$ zip -r httpdocs.zip httpdocs --exclude "*.log"
問題解決
CentOS7中命令找不到
1-Bash: Unzip: Command Not Found
解決方法
1yum install -y unzip zip
來源:https://github.com/jaywcjlove/linux-command
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。