![](/img/trans.png)
[英]Shutil unpack archive - Can not unpack temporary zip file - Python
[英]Is it possible to specify a file name inside .zip archive compressing standard input to standard output using cli tools?
我正在嘗試找到一種方法來指定 compressed.zip 存檔中的文件名,同時將其從標准輸入壓縮為標准 output。我想在不創建臨時文件的情況下實現它。
目前我有一個創建 mysqldump 的示例腳本,將結果作為輸入傳遞給 zip 命令並將 stream 輸出到 aws s3 命令以將結果保存到 S3。
這是示例:
mysqldump ... | zip | aws s3 cp - s3://[bucket_name]/output.sql.zip
問題是 zip 默認情況下在 zip 存檔中保存一個名為“-”的文件。
也許有一種方法可以使用 zip 命令或任何其他 zip 庫在存檔中傳遞特定文件名?
最近的 Linux 發行版有一個streamzip
腳本,我編寫它來處理這個用例。 在下面的示例中, -member
命令行選項將流式壓縮文件中的成員設置為data.sql
mysqldump ... | streamzip -member data.sql | aws s3 cp - s3://[bucket_name]/output.sql.zip
如果mysqldump
大於 4G,請在streamzip
中包含-zip64
選項。
如果您沒有可用的streamzip
,請從https 下載://github.com/pmqs/IO-Compress/blob/master/bin/streamzip
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.