小编cre*_*ive的帖子

Python:使用参数(变量)执行shell脚本,但是在shell脚本中不读取参数

我试图从python执行shell脚本(而不是命令):

main.py
-------
from subprocess import Popen

Process=Popen(['./childdir/execute.sh',str(var1),str(var2)],shell=True)

execute.sh
----------

echo $1 //does not print anything
echo $2 //does not print anything
Run Code Online (Sandbox Code Playgroud)

var1和var2是我用作shell脚本输入的一些字符串.我错过了什么或者有其他办法吗?

简介:如何使用subprocess popen Python

python shell subprocess popen

15
推荐指数
1
解决办法
3万
查看次数

Python lib psutil:如何使用 wait() 获取退出状态

我正在使用带有许多参数的 Subprocess Popen 执行第 3 方应用程序

myprocess=Popen(['executionlist','with','arguments'],stdout=PIPE,stderr=PIPE)
myprocess.communicate()
Run Code Online (Sandbox Code Playgroud)

获取我的 stdout 和 err 元组,第 3 方应用程序在后台启动,因此我在 stdout 中获取其 pid...[如果我尝试在前台运行,它会抛出“打开终端时出错:未知”] 我正在使用 psutil跟踪所有这些分叉并使用以下方式监控它:

EXITCODE=psutil_obj.wait(timeout=xxx)
Run Code Online (Sandbox Code Playgroud)

应用程序发送不同的退出代码,我需要在 EXITCODE 中访问这些代码,但当我在不同的 python 脚本中运行它时,它总是给我“无”值......

根据 https://code.google.com/p/psutil/wiki/Documentation “Wait() 进程终止,如果该进程是当前进程的子进程,也返回退出代码,否则无。”

无论如何,我是否可以从独立进程 ID 访问退出代码,而不是由 Popen 专门分叉的?

python subprocess exit-code

1
推荐指数
1
解决办法
4220
查看次数

标签 统计

python ×2

subprocess ×2

exit-code ×1

popen ×1

shell ×1