Ausgabe auf Konsole/Terminal in Datei speichern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
kleiner.epsilon
User
Beiträge: 25
Registriert: Sonntag 31. Oktober 2010, 14:31

Ich führe in Python ein Programm aus

os.system('Programmname Pfad')

(verwende os.system, weil das für meine Zwecke ausreichend ist und funktioniert),
auf der Konsole/Terminal erscheint das Ergebnis, das ich haben will.

Nun möchte ich aber diese Ausgabe in einer Datei .txt speichern, um dann später als String einzulesen und etwas zu ändern.

Wie kann ich diese Ausgabe auf der Konsole abspeichern,
oder noch besser, wie kann ich sagen, dass gleich nach 'Programm ausführen' die Ausgabe in einer Datei gespeichert werden soll?
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

Verwende anstatt os.system, os.popen* das subprocss-Modul.

Mit dem subprocess-Modul kannst du die Ausgabe mit PIPEs umlenken z.B. in eine Datei.
the more they change the more they stay the same
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Vor allem, weil es ihm ja bereits empfohlen wurde... :roll:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
EmaNymton
User
Beiträge: 174
Registriert: Sonntag 30. Mai 2010, 14:07

Alternativ kannst du das auch ohne Python lösen, indem du die Ausgabe von der Shell in eine Datei umleiten lässt:

Code: Alles auswählen

python mein_programm.py > datei.txt
Antworten