Unix:zip 資料夾忽略資料夾結構並排除子目錄

Unix:zip 資料夾忽略資料夾結構並排除子目錄

我想創建一個 zip 忽略資料夾結構,並排除特定子資料夾的內容。

我努力了:

zip -rj /path/to/target.zip /path/to/source -x "/path/to/source/subfolder/*"

它不起作用,zip 回傳訊息:

zip 錯誤:無事可做! (/path/to/target.zip)

答案1

摘錄man 1 zip

[...]輸入模式,例如

       /foo/bar/*

通常會符合兩個路徑,* 符合 dir/file1.c 和 file2.c。請注意,在第一種情況下,匹配中跨越了目錄邊界 (/)。使用 -ws 時,符合中不會包含目錄邊界,使通配符成為特定目錄層級的本機通配符。因此,啟用 -ws 後,只有第二條路徑會被比對。

使用 -ws 時,使用 ** 來跨目錄邊界匹配,就像 * 一樣。

使用時也是如此-x

因此,為了您的目的*,如果它是目錄,則將排除模式加倍:

zip -rj /path/to/target.zip /path/to/source -x "/path/to/source/subfolder/**"

相關內容