我有一些Python中的长期过程和临时过程。尽管shell和C程序以自己的名字运行,但所有Python进程都以“python filename.py”运行,这使识别进程变得困难。如何让Python进程以正确的进程名称运行?
如何让python进程在Linux中显示为“logserver.py”或类似内容?我在Ubuntu 11.10中使用Python 2.7。
我有一些Python中的长期过程和临时过程。尽管shell和C程序以自己的名字运行,但所有Python进程都以“python filename.py”运行,这使识别进程变得困难。如何让Python进程以正确的进程名称运行?
如何让python进程在Linux中显示为“logserver.py”或类似内容?我在Ubuntu 11.10中使用Python 2.7。
将shebang添加到相关Python文件中,使Python文件可执行(例如通过chmod a+x ./logserver.py
),并直接通过./logserver.py
启动它。
一个shebang是告诉内核哪个解释器使用的一行。它只是在文件的开头就有一行,如#!/usr/bin/env python
。
如果您希望在脚本运行时显式或更改名称,则PyPI上有library for that。
import setproctitle
setproctitle.setproctitle('logserver')
使脚本可执行文件并直接启动它往往是不够的,虽然。
尽可能多的答案是正确的。这是一个了不起的模块。 –
推荐使用这行:'#!/ usr/bin/env python' – wim
@wim:你说得对,我已经更新了我的答案。 – lunaryorn