2011-11-02 145 views
4

我有一些Python中的長期過程和臨時過程。儘管shell和C程序以自己的名字運行,但所有Python進程都以「python filename.py」運行,這使識別進程變得困難。如何讓Python進程以正確的進程名稱運行?

如何讓python進程在Linux中顯示爲「logserver.py」或類似內容?我在Ubuntu 11.10中使用Python 2.7。

回答

9

將shebang添加到相關Python文件中,使Python文件可執行(例如通過chmod a+x ./logserver.py),並直接通過./logserver.py啓動它。

一個shebang是告訴內核哪個解釋器使用的一行。它只是在文件的開頭就有一行,如#!/usr/bin/env python

+5

推薦使用這行:'#!/ usr/bin/env python' – wim

+0

@wim:你說得對,我已經更新了我的答案。 – lunaryorn

4

如果您希望在腳本運行時顯式或更改名稱,則PyPI上有library for that

import setproctitle 
setproctitle.setproctitle('logserver') 

使腳本可執行文件並直接啓動它往往是不夠的,雖然。

+0

儘可能多的答案是正確的。這是一個了不起的模塊。 –

相關問題