2011-05-27 19 views
0

我的python程序从命令行获取两个输入参数,例如(maxt,30days)。该程序的执行时间约为10分钟。我想三次运行该程序,即第一次使用maxt和30天,第二次使用maxt和14天,第三次使用maxt和7天。如何在不等待代码使用一组参数执行的情况下运行代码三次,然后手动输入第二组参数,等等....我不想在内部循环我的代码....是否有我可以先用一组参数运行代码,然后让系统等待10分钟,然后用另一组参数运行相同的代码.... 任何帮助表示赞赏.....谢谢你如何使用不同的参数集运行代码,而无需等待代码使用一个参数执行,然后输入下一个代码

+0

'蟒蛇prog.py argset1;睡600;蟒蛇prog.py argset2'?如果在Windows上,你可以简单地使用Python。 – khachik 2011-05-27 15:39:39

+0

我很困惑,你说你不想等,然后你说你**做**。你能否概述一下(例如编号的步骤)流程应该是什么? – 2011-05-27 15:40:42

回答

0

这听起来像你想要的是一个shell脚本,像这样:

#! /bin/sh 

yourprogram maxt 30days 
yourprogram maxt 14days 
yourprogram maxt 7days 

假如把它放在一个文件,chmod +x它,并运行它作为./filename。它与在命令提示符下按顺序键入这三个命令的效果相同,在开始下一个命令之前等待每个命令完成。

2

如果你是一个UNIX命令行:

$ yourprogram maxt 30days & 
$ yourprogram maxt 14days & 
$ yourprogram maxt 7days & 

这将启动你的程序在parallell的背景。

0

这里是一个过于复杂的bash一个班轮:

for days in 30 14 7 ; do yourprogram maxt ${days}days > output_$days & ; done 

它写出的输出,因为这是可能的,它可能会以其他方式错杂到单独的文件。

如果你想这样做的python里面你可以尝试多模块:http://docs.python.org/library/multiprocessing.html

+1

不需要inner {},只需要'var in 30 14 7;做命令;完成“将会诀窍。 – GreyCat 2011-05-28 19:48:51

+0

好点。不知道为什么我把他们放进去。 – 2011-05-28 22:31:39

相关问题