Python中文
首页
教程
问答
标签
搜索
登录
注册
如何在中使用现有的环境变量子流程.Popen()
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p><strong>场景</strong></p> <p>在我的python脚本中,我需要将一个可执行文件作为一个子进程运行,该子进程包含可执行文件所期望的x个命令行参数。在</p> <p>示例:</p> <ul> <li>例1:myexec.sh公司参数1参数2</li> <li>例2:myexec.sh公司参数1$MYPARAMVAL</li> </ul> <p>可执行文件和参数未知,因为它们是在运行时从外部源(xml config)配置和检索的。在</p> <p>我的代码在参数是已知值(例如1)并进行了配置时工作,但是期望参数可以是环境变量并配置为环境变量,这应该在运行时进行解释</p> <p>在下面的示例中,我使用echo作为myexec.sh公司演示场景。 这是为了证明这个问题“cmdlst”是从配置文件生成的,该文件可以是具有任意数量的参数和值(可以是值或环境变量)的任何脚本。在</p> <p><strong>test1.py</strong></p> <pre><code>import subprocess import os cmdlst = ['echo','param1','param2'] try: proc = subprocess.Popen(cmdlst,stdout=subprocess.PIPE) jobpid = proc.pid stdout_value, stderr_value = proc.communicate() except (OSError, subprocess.CalledProcessError) as err: raise print stdout_value </code></pre> <p><strong>结果测试1</strong></p> <p>python test1.py</em></p> <p>-->param1参数2</p> <p><strong>test2.py</strong></p> ^{pr2}$ <p><strong>结果测试2</strong></p> <p><em>导出参数=param2</em> <em>回显$PARAM</em></p> <p>-->;参数2 <em>python test2.py</em></p> <p>-->;参数1$PARAM</p> <p>考虑到$PARAM只在运行时已知,并且需要从当前环境中检索,我需要test2生成与test1相同的结果。在</p> <p>我欢迎你的建议。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你可以:</p> <pre><code>cmdlist = ['echo','param',os.environ["PARAM"]] </code></pre> <p>或者:</p> ^{pr2}$
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在python3x中以垂直和水平的方式格式化列表?
2 回答
如何在python3x中创建datetime对象
2 回答
如何在python3x中取消pickle一个在python2.7中被pickle的模型?
9 回答
如何在python3x中格式化字典键
6 回答
如何在python3x中正确地通过sockets发送字典的内容?
1 回答
如何在python3x中调用if语句中的类和函数
1 回答
如何在Python3上三取二列表
8 回答
如何在python3上为方法搜索RegEx创建模式?
8 回答
如何在Python3上使用HTMLUnit和Selenium 2.45.0
2 回答
如何在Python3上使用telebot发送没有bot.polling()的消息
7 回答
如何在python3上使用Tkinter更新GUI?
3 回答
如何在python3上使用urllib和代理对HTTPS页面发出请求
1 回答
如何在Python3上制作按键
2 回答
如何在python3上发布图像和文本多部分表单?
1 回答
如何在Python3上安装Bob?
1 回答
如何在python3上安装Django?
6 回答
如何在python3上安装第三方模块
9 回答
如何在Python3上安装袖扣?
7 回答
如何在python3上打印当前日期?
1 回答
如何在Python3上执行此javascript代码?
3 回答