一直试图让这样的工作一段时间,下面似乎并没有发送正确的参数给c程序arg_count,它输出argc = 1
。当我很确定我希望它是2
。 ./arg_count -arg
从壳输出2 ...python subprocess missing arguments
我试着用另一个arg(所以它会在shell中输出3),它仍然输出1通过子进程调用时。
import subprocess
pipe = subprocess.Popen(["./args/Release/arg_count", "-arg"], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, err = pipe.communicate()
result = out.decode()
print "Result : ",result
print "Error : ",err
任何想法在哪里下跌?我正在运行Linux btw。
谢谢,这似乎解决争论问题,但是现在我得不到任何输出...... – jayjay
无论出于何种原因,脚本必须与可执行文件位于同一目录才能获得有效结果?或者我不知道如何写一个文件路径... – jayjay
这不应该是这样;我可以很容易地将我的'arg_count'版本(在这种情况下是一个2行Python脚本)放在不同的目录中,并获得正确的结果。除非你的'arg_count'本身有一些尴尬的问题。 – Evert