
python 编程,如何用subprocess执行带参数的命令,并且参数储存在data.txt里面
想执行类似如下命令(./examplecpp是可执行程序,参数储存在data.txt里面)p1=subprocess.Popen(['./examplecpp','`ca...
想执行类似如下命令(./examplecpp是可执行程序,参数储存在data.txt里面)
p1=subprocess.Popen(['./examplecpp','`cat data.txt`'], stdout=subprocess.PIPE)
发现:命令把cat data.txt当作参数。我希望把
cat data.txt的输出当作输入参数。如何做呢?
ps: os.system(。。。)可以执行,但是会直接把运行结果输出到屏幕上去。我不希望这样我想通过变量p1储存结果,为以后其他命令执行。有其他方式(不是subprocess)也行,但要求能储存运行结果。 展开
p1=subprocess.Popen(['./examplecpp','`cat data.txt`'], stdout=subprocess.PIPE)
发现:命令把cat data.txt当作参数。我希望把
cat data.txt的输出当作输入参数。如何做呢?
ps: os.system(。。。)可以执行,但是会直接把运行结果输出到屏幕上去。我不希望这样我想通过变量p1储存结果,为以后其他命令执行。有其他方式(不是subprocess)也行,但要求能储存运行结果。 展开
3个回答
展开全部
``使命令结果作为参数不是程序的处理,是shell的处理,所以如果需要这么使用,应当使用shell处理你的字符串
简单说来,应该这么用:
p1=subprocess.Popen('./examplecpp `cat data.txt`', stdout=subprocess.PIPE, shell=True)
简单说来,应该这么用:
p1=subprocess.Popen('./examplecpp `cat data.txt`', stdout=subprocess.PIPE, shell=True)
展开全部
调用 shell 的执行功能
subprocess.Popen(['/bin/sh', .....
思路:
sh -e "你的所有命令"
subprocess.Popen(['/bin/sh', .....
思路:
sh -e "你的所有命令"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用os.popen吧。
import os
p1 = os.popen('./examplecpp `cat data.txt`').read()
import os
p1 = os.popen('./examplecpp `cat data.txt`').read()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询