Bash

如何使用“zip”命令創建沒有文件副檔名的 zip 存檔?

  • December 18, 2019

通常,要壓縮目錄,我可以執行以下操作:

zip -r archive.zip directory/

但是,如果我嘗試archive.zip像這樣刪除副檔名:

zip -r archive directory/

.zip它隱式地將副檔名附加到輸出。有沒有辦法在不創建 a.zip然後重命名它的情況下做到這一點?

zip在 Ubuntu 18.04 上使用這個版本:

Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

( -A)--adjust-sfx選項導致zip按原樣處理給定的存檔名稱:

zip -Ar archive directory/

即使archive沒有創建為自解壓檔案,這也有效。

您可以讓它將 zip 輸出提供給 stdout,然後將其重定向到文件:

zip -r - -- directory/ > archive

為了清楚起見,第一個破折號指的是標準輸出,而這對破折號將初始參數與輸入列表分開。

引用自:https://unix.stackexchange.com/questions/557800