Die Suche ergab 8 Treffer

von edwood
Montag 18. Mai 2009, 15:47
Forum: Allgemeine Fragen
Thema: communicate() - wie groß ist der buffer?
Antworten: 1
Zugriffe: 682

communicate() - wie groß ist der buffer?

hi, ich versuche über subprocess.Popen commandos auszuführen, ich will aber auch den output mitloggen, dazu hätte ich dann einfach communicate[0] verwendet, also so in etwa:
out=subprocess.Popen(cmd.split(), stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate[0]

problem ist nur dass der ...
von edwood
Montag 20. April 2009, 13:18
Forum: Allgemeine Fragen
Thema: shellscript von python aufrufen (umgebungsvariablen setzen)
Antworten: 7
Zugriffe: 3457


1. wenn das Skript "export" verwendet (was es sollte), /proc:

>>> Popen("sh -c '. ./env.sh; cat /proc/self/environ'", shell=True, env={}, stdout=PIPE).communicate()[0].split('\x00')[:-1]
['FOO=bar', 'PWD=/tmp']



ausgezeichnet, danke, funktioniert ganz gut, von sowas hab ich eh auch oben ...
von edwood
Freitag 17. April 2009, 22:26
Forum: Allgemeine Fragen
Thema: shellscript von python aufrufen (umgebungsvariablen setzen)
Antworten: 7
Zugriffe: 3457

Warum setzt du die Variablen nicht direkt im PythonSkript?

um mich mal selbst zu quoten:

und nachdem sich das shell script auch des öfteren ändern kann (unabhängig von mir), kann ich jetzt auch nicht einfach die variablen in das python script hardcoden

heißt soviel wie, dass ich keine ...
von edwood
Freitag 17. April 2009, 14:56
Forum: Allgemeine Fragen
Thema: shellscript von python aufrufen (umgebungsvariablen setzen)
Antworten: 7
Zugriffe: 3457

shellscript von python aufrufen (umgebungsvariablen setzen)

hi, ich möchte ein shell-script über python aufrufen das bestimmte umgebungsvariablen setzt, problem ist nur, dass wenn ich das über subprocess oder os.system aufrufe die umgebungsvariablen nicht in der umgebung von dem python script gesetzt werden sondern nur in der vom erzeugten prozess

im moment ...
von edwood
Sonntag 29. März 2009, 19:06
Forum: Allgemeine Fragen
Thema: Output umleiten
Antworten: 8
Zugriffe: 1919

hmm....ok, hört sich natürlich schon mal schlecht an bzw. kompliziert (soll unter linux + win laufen), ich kann aber irgendwie nicht ganz glauben, dass das hier so ungewöhnlich ist was ich machen will, also einfach ein externes programm aufrufen, seinen output speichern und diesen auf fehler ...
von edwood
Freitag 27. März 2009, 15:16
Forum: Allgemeine Fragen
Thema: Output umleiten
Antworten: 8
Zugriffe: 1919

danke, ist zwar nett gemeint hilft mir aber nur bedingt weiter, denn ich glaube kaum dass mein problem mit dem richtigen einrücken zu beheben ist ;)

(und keine sorge, ich weiß dass es da nicht nur ums einrücken geht, werds mir auch bei gelegenheit genauer anschauen, würde aber gerne zuerst das ...
von edwood
Freitag 27. März 2009, 14:00
Forum: Allgemeine Fragen
Thema: Output umleiten
Antworten: 8
Zugriffe: 1919

ok, ich versuch gerade etwas anderes, und zwar hab ich ein einziges logfile in dem jetzt stderr und stdout stehen soll, aber genau so wie das jeweilige command das ausgibt, das probelm ist nur, dass ich eben schauen will ob ein error aufgetreten ist (indem ich das stderr check) und das signalisieren ...
von edwood
Montag 9. März 2009, 12:40
Forum: Allgemeine Fragen
Thema: Output umleiten
Antworten: 8
Zugriffe: 1919

Output umleiten

hi,
ich will den output eines beliebigen commandos mitloggen, d.h. ich will den output dann in 2 files stehen haben.
stdout+stderr => cmd.log
stderr => cmd.err

das problem ist jetzt dass stdout UND stderr in ein file müssen, habs bis jetzt so dass im .log-file eben NUR stdout steht, ohne stderr ...