[英]How to start a python script in the background once it's run?
def main(self,argv):
do stuff.......
if __name__ == '__main__':
main(sys.argv[1:])
当我的脚本运行时,我怎样才能使它立即作为后台进程运行 main() ? 它将运行完成并将信息输出到文件。
我忘了说......目标是能够在任何操作系统上运行它。 我不想修改在命令行中调用脚本的方式,我希望脚本本身使其在后台运行。
简单的:
$ python yourpythonscript.py &
操作系统将为您处理;)当然,如果这是在 windows 或 *nix 上,您将不得不 state。
如果您在 windows 下运行此程序,您可能需要检查cmd.exe
程序 - 我认为有一个选项可以将其 arguments 作为后台进程运行...
或者如果你在 linux 机器下运行这个,你可以使用ps aux | grep yourpythonscript.py
检查进程。 ps aux | grep yourpythonscript.py
在 Windows 上,使用pythonw.exe
而不是python.exe
运行程序。
在 Unix 和 MacOS 上,使用Python 守护程序配方或 python-守护python-daemon
package。
我会使用 Python线程库。 这将允许您在后台运行 main()。
在 linux 中,您可以使用 & 在后台运行它,如果您希望它运行,即使您关闭 shell 使用 nohup 命令: nohup python yourpythonscript.py &
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.