Zip
更改工作目錄
我正在嘗試壓縮目錄
/home/cyrus/sql
我想在壓縮文件夾時更改工作目錄:
/ $ zip -b /home/cyrus sql.zip /home/cyrus/sql
但是當我檢查 zip 文件時:
/ $ unzip -l sql.zip Archive: sql.zip Length Date Time Name --------- ---------- ----- ---- 0 2013-05-30 10:59 home/cyrus/sql/ 1776642 2013-05-23 10:22 home/cyrus/sql/wordpress.sql --------- ------- 1776642 2 files
根文件夾應該是
sql
. 我做錯了什麼?
來自
man zip
:-b path --temp-path path
使用臨時 zip 存檔的指定路徑。例如:
zip -b /tmp stuff *
將臨時 zip 存檔放在目錄 /tmp 中,完成後將 stuff.zip 複製到目前目錄。當更新現有存檔並且包含此舊存檔的文件系統沒有足夠的空間來同時保存舊存檔和新存檔時,此選項很有用。在某些情況下流式傳輸以避免需要數據描述符時,它也可能很有用。請注意,使用此選項可能需要 zip 在完成後將存檔文件複製到目標文件系統需要額外的時間。
預設情況下
zip
儲存相對於目前目錄的完整路徑。如果您希望您的 zipfile 將您的sql
目錄作為根目錄,您需要從該/home/cyrus
目錄執行命令。
如果要給
zip
定目錄的內容並將zip
文件儲存在目前目錄中,可以這樣寫:(cd /some/dir && zip -r - dir-there) > file.zip