python脚本中的os.system命令导致错误

时间:2013-07-22 18:07:33

标签: python linux terminal subprocess sleep

我遇到了一行代码问题,并且发现了第二个有趣的问题。

我有一个命令,然后当放入终端将启动一个程序,然后将输出写入输出文件。因此,由于某种原因,我无法将数据写入输出文件(虽然程序启动,但是当我有python打开终端并运行它时,我可以看到它吐出数据)

由于某种原因,它似乎不想将我的数据重定向到输出文件。我已尝试在脚本和终端(python script.py> output.out)中进行此操作

现在我尝试在主命令之前启动一个sleep命令,我从睡眠中得到一个错误

sleep: invalid option -- 'n'

这是代码

os.system('gnome-terminal -e "sleep 10 ; /usr/local/bin/mpirun -np 4 /home/mike/bin/Linux-ifort_XE_openmpi-1.6_emt64/v2_0_1/Pcrystal </dev/null &> mgo.out &"')

1 个答案:

答案 0 :(得分:1)

对于您的原始问题(没有睡眠),您的输出重定向需要一些工作,请尝试:

/usr/local/bin/mpirun -np 4 /home/mike/bin/Linux-ifort_XE_openmpi-1.6_emt64/v2_0_1/Pcrystal </dev/null > mgo.out 2>&1 &

会将标准输出和标准错误都指向文件。