मैं पायथन सबप्रोसेस का उपयोग करके निम्न आदेश चलाने के लिए चाहता हूं।

Docker run --rm -it -v $(pwd):/grep11-cli/config ibmzcontainers/hpvs-cli-installer:1.2.0.1.s390x क्रिप्टो सूची | grep 'cex4queue': []'

अगर मैं subprocess.call() का उपयोग कर चलाता हूं - यह काम कर रहा है। लेकिन मैं वापसी मूल्य की जांच करने में सक्षम नहीं हूँ

S1="docker run --rm -it -v $(pwd):/grep11-cli/config ibmzcontainers/hpvs-cli-installer:1.2.0.1.s390x क्रिप्टो सूची | grep \'cex4queue\": []\' "p1 = सबप्रोसेस। कॉल (s1, शेल = ट्रू)

Subprocess.run के साथ समान आदेश काम नहीं कर रहा है।

मैं यह जांचना चाहता हूं कि वह स्ट्रिंग मौजूद है या नहीं। मैं कैसे जांच कर सकता हूं?

0
Deepthi shree Bhat 16 अप्रैल 2020, 15:02

1 उत्तर

सबसे बढ़िया उत्तर

मैं subprocess.Popem के उपयोग की अनुशंसा करता हूं:

import subprocess as sb

process = sb.Popen("docker run --rm -it -v $(pwd):/grep11-cli/config ibmzcontainers/hpvs-cli-installer:1.2.0.1.s390x crypto list | grep 'cex4queue\": []'".split(), stdout=sb.PIPE, stderror=sb.PIPE)

output, errors = process.communicate()

print('The output is: {}\n\nThe errors were: {}'.format(output, errors))
0
Cblopez 16 अप्रैल 2020, 12:08