找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3118|回复: 1

[已回复] 有点懵的python调用程序问题,求助。

1

主题

1

帖子

5

积分

贫民

积分
5
upselfever 发表于 2016-7-13 10:47:30 | 显示全部楼层 |阅读模式
系统:LINUX

我用python写了一个脚本,功能是检查当前进程中是否有A程序。如果没有,则将A程序调起执行。然后在crontab中配置,周期执行这个python脚本。


其中,调用A程序使用的是subprocess.Popen。
... ...
os.chdir("A程序所在路径")
cmdStr=“./A”
Child_a=subprocess.Popen(cmdStr,shell=True,stdout=subprocess.PIPE,env=new_env)
Child_a.wait()
... ...


现在遇到的问题是A始终没被调起来。
而且通过日志观察,发现虽然使用了wait函数,但主程序实际上没有等待子进程运行结束。


另外,我这个功能是否不应该使用subprocess.Popen这样的函数? 我的目的是是A能跑起来,而不是脚本进程的一个子进程。


请高手指点迷津。
回复

使用道具 举报

5

主题

165

帖子

165

积分

版主

Rank: 7Rank: 7Rank: 7

积分
165

热心会员突出贡献优秀版主荣誉管理

mongo 发表于 2016-7-13 13:46:06 | 显示全部楼层
本帖最后由 mongo 于 2016-7-13 14:51 编辑

可以写一条系统命令查看你所期望的进程有没运行,然后用subprocess.Popen() 调用这条命令,返回stdout 和stderr,据此判断进程有没开启,进而得知可否执行某程序.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表