2016-02-11 30 views
1

我知道我可以使用psutil讓正在運行的進程的名單像這樣的Python在進程列表中檢測到一個python腳本的名稱

import psutil 

for i in psutil.pids(): 
    print(psutil.Process(i).name()) 

但是,如果我運行一個python腳本使用python,psutil只會告訴我,我有一個蟒蛇運行的實例。

所以,我的問題是 - 如果我運行一個python腳本:

python script_name 

是有可能通過psutil檢測script_name

回答

5

psutil.Process(i).cmdline()docs。你的榜樣將返回

['python', 'script_name'] 
1

psutil文檔指出CMDLINE()方法返回進程的命令行。如果命令行是python script_name,則第二個單詞將是實際的腳本名稱。要獲得這些信息,我會將psutil.Process(i).name()更改爲psutil.Process(i).cmdline()