psutil 跨平台根據程序名殺進程


筆者在項目中遇到過需要根據進程名殺進程的需求,利用python庫psutil實現了此功能。

模塊地址:
https://pypi.python.org/pypi/psutil/
 
psutil功能
提供接口可以用來獲取信息,包括:
當前運行的進程
系統(資源使用)信息
CPU
內存
磁盤
網絡
用戶
 
相應的用法可以看其提供的接口,便一目了然
以下是一個根據進程名,殺掉進程的例子,支持windows和linux平台
def kill_process_with_name(process_name):
    """根據進程名殺死進程

    @# 增加跨平台支持   

    """
    pid_list = psutil.pids()
    for pid in pid_list:
        try:
            each_pro = psutil.Process(pid)
            if process_name.lower() in each_pro.name().lower(): 
         logger.info('find and kill %s' % process_name) 
         each_pro.terminate()
         each_pro.wait(timeout
=3)

except psutil.NoSuchProcess, pid:
       pass

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM