我想使用子進程從python調用sed。我嘗試使用的腳本如下。但是,這將sed輸出傳輸到標準終端。似乎'>'操作符不能從我的subprocess.call語句中識別。有什麼建議麼?Python - 使用子進程調用sed?
import sys
import os
import subprocess
files = os.listdir(sys.argv[1])
count = 0
for f in files:
count += 1
inp = sys.argv[1] + f
outp = '../' + str(count) + '.txt'
sub = subprocess.call(['sed', 's/\"//g', inp, '>', outp])
另外 - 我的文件名中有空格,即「file1 .txt」。這可能是問題嗎?當我從終端調用sed時,我的sed命令正常工作,而不是從腳本中調用。
謝謝。
任何理由不在Python本身做到這一點? – robert
@robert +1這是一個很好的觀點,你應該提供它,包括解決方案,作爲答案。 – Nix