यदि मैं निम्नलिखित कार्य करता हूं:
import subprocess
from cStringIO import StringIO
subprocess.Popen(['grep','f'],stdout=subprocess.PIPE,stdin=StringIO('one\ntwo\nthree\nfour\nfive\nsix\n')).communicate()[0]
मुझे मिला:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 533, in __init__
(p2cread, p2cwrite,
File "/build/toolchain/mac32/python-2.4.3/lib/python2.4/subprocess.py", line 830, in _get_handles
p2cread = stdin.fileno()
AttributeError: 'cStringIO.StringI' object has no attribute 'fileno'
जाहिरा तौर पर एक cStringIO.StringIO ऑब्जेक्ट उपप्रकार के अनुरूप एक फ़ाइल को बंद करने के लिए पर्याप्त नहीं है। मैं इसके आसपास कैसे काम करूं?
call(['ls', '-1'], shell=True)
गलत है। मैं इसके बजाय उपप्रकार टैग विवरण से सामान्य प्रश्न पढ़ने की सलाह देता हूं । विशेष रूप से, क्यों subprocess.Popen काम नहीं करता है जब args अनुक्रम है? बताते हैं कि call(['ls', '-1'], shell=True)
गलत क्यों है। मुझे याद है कि मैं ब्लॉग पोस्ट के तहत टिप्पणियां छोड़ता हूं, लेकिन मैं उन्हें किसी कारण से नहीं देखता हूं।
subprocess.run
देखने के लिए stackoverflow.com/questions/48752152/…