2017-05-26 116 views
0

我想壓縮所有匹配由我使用下面的代碼,但得到一個錯誤的用戶輸入的模式的日誌。如何使用python腳本在linux中壓縮多個文件?

import subprocess 
input=input("Enter log details to compress") 
subprocess.call(['gzip',input],shell=True) 

輸入給定爲:purato.log.2017-08 *

錯誤:gzip的:不寫入到終端的壓縮數據。使用-f強制壓縮。

回答

0

你給gzip在python字符串purato.log.2017-08*,但是在當你在shell執行gzip purato.log.2017-08*gzip取代之前的外卡*被調用。

爲了複製此行爲,請在call()函數上啓用shell

subprocess.call(['gzip purato.log.2017-08*'],shell=True) 
+0

我得到這個錯誤 的gzip:不寫入到終端壓縮數據。使用-f強制壓縮 –

+0

它需要是shell解釋它的全部字符串:'['gzip%s'%input]'。 – dlasalle

+0

它的工作! Thanx a ton dlasalle !!!!!!! –

相關問題