2010-01-07 110 views
3

是否可以使用類似於:Linux:從管道向zip壓縮文件添加命名文件

command.exe | zip >> archive.zip

command2.exe | zip >> archive.zip

...並在一個zip存檔中結束兩個命名文件。 這樣,如果可能的話,會比臨時文件更加整潔。

+0

tmp文件有什麼問題? – Malfist 2010-01-07 16:32:58

+0

在等待最後一個文本文件準備就緒的同時增加磁盤峯值使用量。 – Ticktoe 2010-01-07 16:34:45

+0

不應該在serverfault? – Kimvais 2010-01-08 10:53:49

回答

2

在一個新的目錄(使用mkfifo)中創建兩個命名管道,將命令的輸出傳遞給這兩個管道,然後壓縮目錄。

mkdir tmp 
mkfifo tmp/1.out 
mkfifo tmp/2.out 
command1.exe > tmp/1.out 
command2.exe > tmp/2.out 
zip -FI -r tmp.zip tmp/ 

編輯:增加了FI標誌壓縮,這確實使這成爲可能。唯一需要注意的是,你需要zip 3.0才能工作。 Tar:ing FIFO:s沒有實現(根據tar開發者),因爲您需要提前將文件大小寫入TAR頭文件。

相關問題