[英]unix command not working in python subprocess
以下命令在外壳上可以正常工作
ssh hostname 'pgrep -fn "java -cp /strbase/apps/App"'
但是不在python子进程中,我的数组如下
cmd_array = ['ssh', 'hostname', "'pgrep", '-fn', '"java', '-cp', '/strbase/apps/App"\'']
但是我没有输出。
我在下面尝试:
process = subprocess.Popen(
cmd_array, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = process.communicate()
然而
stdout
评估为空字符串,应该给我一个数字。 为什么是这样? 在外壳中工作正常吗?
您的cmd_array
错误,您仅发送了两个参数,主机名和命令字符串,应该为:
cmd_array = ["ssh", "hostname", 'pgrep -fn "java -cp /strbase/apps/App"']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.