首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python中启动程序,然后启动一个python脚本,该脚本监视程序生成的输出文件

在python中启动程序,然后启动一个python脚本,该脚本监视程序生成的输出文件
EN

Stack Overflow用户
提问于 2014-02-06 02:40:57
回答 2查看 373关注 0票数 0

我想从python启动一个程序,在本例中是abaqus (一个有限元分析软件),使用:

代码语言:javascript
复制
os.system('abaqus job=' + JobName + ' user=' + UELname + ' interactive')

在运行程序5分钟后,我想执行一个python脚本,该脚本监视由abaqus生成的一些输出文件。如果满足某个条件,python脚本将终止abaqus作业。这里有一个问题。要读取输出文件,我需要从abaqus运行python脚本:

代码语言:javascript
复制
os.system('abaqus cae noGUI=results2.py')

我的问题是:

我可以简单地通过以下方式做到这一点:

代码语言:javascript
复制
os.system('abaqus job=' + JobName + ' user=' + UELname + ' interactive')
time.sleep(300)
os.system('abaqus cae noGUI=results2.py')

我知道使用abaqus键会让系统等待interactive作业完成后再做其他事情。因此,我认为这并不像我希望的那样简单。有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2014-02-06 02:47:18

你试过subprocess模块了吗?

票数 2
EN

Stack Overflow用户

发布于 2014-02-06 02:49:02

逻辑看起来不错,我建议你使用subprocess,而不是os.system。由于您正在调用命令,因此可以像这样一次运行所有这些命令

代码语言:javascript
复制
cmdToRun = '\'abaqus job=\' + JobName + \' user=\' + UELname + \' interactive\' ; sleep 300; abaqus cae noGUI=results2.py'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21585730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档