Chcę zadzwonić pod numer sed z Pythona za pomocą podprocesu. Skrypt, którego próbowałem użyć, znajduje się poniżej. jednak powoduje wyprowadzenie wyjścia sed do standardowego terminala. Wygląda na to, że operator ">" nie jest rozpoznawany z mojego podprocesu. Jakieś sugestie?Python - używanie podprocesu do wywoływania 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])
Ponadto - moje nazwy plików zawierają spacje, tj. "Plik1 .txt". Czy to może być problem? Polecenie sed działa dobrze, gdy wywołuję sed z terminala, ale nie ze skryptu.
Dzięki.
Każdy powód, aby tego nie robić w samym Pythonie? – robert
@robert +1, to świetny argument, powinieneś go zaoferować, łącznie z rozwiązaniem, jako odpowiedzią. – Nix