Python-subprocess readlines()?
Ich versuche also Weg von os.popen zu Teilprozess.popen den Empfehlungen in der Bedienungsanleitung. Das einzige Problem das ich habe ist ich kann nicht scheinen zu finden ein Weg, readlines() arbeiten.
So, ich verwendet, um in der Lage zu tun
list = os.popen('ls -l').readlines()
Aber ich kann das nicht
list = subprocess.Popen(['ls','-l']).readlines()
InformationsquelleAutor der Frage jdborg | 2011-09-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit
subprocess.Popen
verwendencommunicate
zum Lesen und schreiben von Daten:Dann kann man immer split den string von den Prozessen'
stdout
mitsplitlines()
.InformationsquelleAutor der Antwort agf
oder, wenn Sie wollen, Lesen Sie line-by-line (vielleicht ist der andere Prozess ist intensiver als
ls
):InformationsquelleAutor der Antwort Fred Foo
Machen Sie einen system-Aufruf, gibt den stdout-Ausgabe als string:
InformationsquelleAutor der Antwort jfs
direkt aus der
help(subprocess)
InformationsquelleAutor der Antwort Kimvais
Einer mehr detaillierten Weise mit subprocess.
InformationsquelleAutor der Antwort thirumalaa srinivas