为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用管道运算符和多个参数调用python“子进程”

如何使用管道运算符和多个参数调用python“子进程”

MMMHUHU 2022-07-05 15:20:47
我正在使用 Python 并希望运行“editUtility”,如下所示。echo "Some data" | /opt/editUtility --append="configuration" --user=userid 14834851483485一些随机数在哪里,也作为参数传递。我正在做的是通过Python“子进程”调用“editUtility”并传递参数,如下所示。proc = subprocess.Popen(['/opt/editUtility', '--append=configuration'],stdout=subprocess.PIPE)            lsOutput=""            while True:              line = proc.stdout.readline()              lsOutput += line.decode()              if not line:                break            print(lsOutput)我的问题是:如何传递上面提到的所有参数以及如何将“回显“某些数据”以及管道符号与子进程调用一起拟合?
查看完整描述

1 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

所以如果你只是想输入一个字符串然后读取进程的输出直到结束Popen.communicate就可以使用:


cmd = [

    '/opt/editUtility',

    '--append=configuration',

    '--user=userid',

    '1483485'

]


proc = subprocess.Popen(

    cmd,

    stdin=subprocess.PIPE,

    stdout=subprocess.PIPE,

    stderr=subprocess.PIPE

)


(stdoutData, stderrData) = proc.communicate('Some data')


查看完整回答
反对 回复 2022-07-05
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号