如何在运行后后台启动Python脚本?
def main(self,argv):
do stuff.......
if __name__ == '__main__':
main(sys.argv[1:])
当我的脚本运行时,我该如何让它立即在后台运行main()这个函数呢?这个函数会一直运行到完成,并把信息输出到一个文件里。
我忘了说……我的目标是能够在任何操作系统上运行这个脚本。我不想修改在命令行中调用脚本的方式,我希望脚本本身就能让它在后台运行。
4 个回答
1
我会使用Python的threading库。这个库可以让你在后台运行main()函数。
3
在Windows系统上,运行程序时要用 pythonw.exe
,而不是 python.exe
。
在Unix和MacOS系统上,可以使用 Python守护进程的做法,或者使用 python-daemon
这个包。
3
简单:
$ python yourpythonscript.py &
操作系统会帮你处理这些事情 ;) 当然,你得说明这是在Windows还是*类Unix系统上。
如果你是在Windows上运行这个程序,你可能想看看 cmd.exe
这个程序——我记得里面有个选项可以让它在后台运行命令...
如果你是在Linux机器上运行这个程序,你可以用 ps aux | grep yourpythonscript.py
来查看进程。