मैं अजगर से gphoto2 चलाने की कोशिश कर रहा हूं लेकिन बिना किसी सफलता के। यह सिर्फ कमांड नहीं मिला है। gphoto सही ढंग से स्थापित है, जैसा कि कमांड टर्मिनल में ठीक काम करता है।पायथन उपप्रोसेस कॉल रिटर्न "कमांड नहीं मिला", टर्मिनल सही ढंग से निष्पादित करता है
p = subprocess.Popen(['gphoto2'], shell=True, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT, executable='/bin/bash')
for line in p.stdout.readlines():
print line
p.wait()
/bin/bash: gphoto2: command not found
मैं जानता हूँ कि OSX टर्मिनल (एप्लिकेशन) लेकिन, इस बारे में कुछ अजीब OSX पर मेरी जानकारी के अल्प है नहीं है।
इस पर कोई विचार?
संपादित
बदल मेरी कोड के कुछ, अन्य त्रुटियों दिखाई
p = subprocess.Popen(['gphoto2'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for line in p.stdout:
print line
raise child_exception
OSError: [Errno 2] No such file or directory
संपादित
पूरा पथ '/ opt/स्थानीय/bin/gphoto2'
लेकिन अगर कोई इस्तेमाल कर रहा यह समझाने की देखभाल कि किस शैल का उपयोग करना है या कैसे लॉग इन करना है और समान कार्यक्षमता प्राप्त करने में सक्षम होना चाहिए ..?
p = subprocess.Popen('gphoto2', shell=True, ...)
हालांकि, shell = True
का उपयोग कर यदि संभव हो तो, क्योंकि यह एक security risk (चेतावनी देखें) हो सकता है बचा जाना चाहिए:
क्यों आप 'subprocess.check_output का उपयोग नहीं करते() 'या एक समय में पूरी चीज आउटपुट? – Gandaro