ValueError: I/O operation on closed file
Verfasst: Sonntag 13. Dezember 2009, 22:32
Hallo!
Ich möchte ein command (auf linux) absetzen und dannach mit dem output (result) arbeiten:
Ich bekomme im output genau das, was ich möchte (mit print result.communicate() kann ich es ausgeben).
Nun würde ich gerne schauen, ob im 2ten feld etwas drin steht und falls ja, entsprechend damit weiter arbeiten:
Dies gibt dann aber ein:
Meine Frage ist nun, wieso und wie kann ich das anderst machen? ich hab schon versucht, eine kopie von result zu machen und damit weiter zu arbeiten. ich möchte das file (ich nehmen an das pipe-file) ja nicht ändern oder so, nur lesen, ob was drin steht...
kann mir da echt jemand weiterhelfen?
danke im voraus!
Ich möchte ein command (auf linux) absetzen und dannach mit dem output (result) arbeiten:
Code: Alles auswählen
result = subprocess.Popen(cmd, shell=True, bufsize=0, executable=None, stdin=None, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Nun würde ich gerne schauen, ob im 2ten feld etwas drin steht und falls ja, entsprechend damit weiter arbeiten:
Code: Alles auswählen
result.communicate()[1].strip()
Code: Alles auswählen
if '' != result.communicate()[1].strip():
File "/usr/lib64/python2.6/subprocess.py", line 663, in communicate
return self._communicate(input)
File "/usr/lib64/python2.6/subprocess.py", line 1152, in _communicate
rlist, wlist, xlist = select.select(read_set, write_set, [])
ValueError: I/O operation on closed file
kann mir da echt jemand weiterhelfen?
danke im voraus!