Command-Line
如何創建僅保留目標目錄及以下結構的 ZIP 存檔?
我需要創建一個 zip 存檔,其中解壓縮的結果會保留從指定目錄向下的目錄結構。我還需要在不實際切換到目錄的情況下執行此操作。
我的問題與此類似。在閱讀了很多關於這個問題的內容後,我覺得沒有任何東西可以完全回答我的問題。
例如,我有:
/tmp /子目錄 /相關目錄 /sub_folder_1/ 東西.pdf 東西.xls /sub_folder_2/ 東西.pdf 東西.xls /sub_folder_3/ 東西.pdf 東西.xls
我需要能夠執行
zip -r /tmp/sub_dir/pertinent_dir.zip /tmp/sub_dir/pertinent_dir/*
使得結果只包含pertinent_dir
以下內容。同樣,無論我目前的目錄上下文如何,我都需要這樣做。我試過-j
了,但這似乎不起作用。也許這是不可能的。有什麼我想念的嗎?
sh -c "cd /tmp/sub_dir/pertinent_dir/../ \ && zip -r pertinent_dir.zip pertinent_dir/*"
您可以使用 jar 代替 zip:
jar cfM /tmp/sub_dir/pertinent_dir.zip -C /tmp/sub_dir pertinent_dir