切換語言為:簡體

教你在 Windows 上使用 Python 關閉應用程序

  • 爱糖宝
  • 2024-08-02
  • 2113
  • 0
  • 0

在許多開發和運維場景中,自動化管理系統程序是一個常見的需求。例如,在進行除錯或資源管理時,您可能需要透過指令碼來關閉特定的應用程式。在 Windows 作業系統中,Python 提供了一種方便的方法來管理系統程序。本文將以 Google Chrome 瀏覽器為例,介紹如何使用 Python 關閉應用程序。

1. 安裝 psutil

在開始編寫程式碼之前,我們需要安裝 psutil 庫,這是一個跨平臺的 Python 庫,提供了獲取系統程序和系統資源資訊的介面。它可以用來輕鬆地與系統程序進行互動。

在終端中執行以下命令以安裝 psutil

pip install psutil

2. 編寫 Python 指令碼以關閉 Google Chrome 程序

以下是一個 Python 指令碼示例,它使用 psutil 庫來關閉 Google Chrome 瀏覽器程序。

import psutil

def terminate_chrome_processes():
    # 遍歷所有程序
    for proc in psutil.process_iter(['pid', 'name']):
        try:
            # 檢查程序名稱是否是 'chrome.exe'
            if proc.info['name'] == 'chrome.exe':
                proc.terminate()  # 嘗試終止程序
                print(f"Terminated process {proc.info['pid']} ({proc.info['name']})")
        except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
            # 捕獲程序不存在、許可權不足或殭屍程序等異常
            pass

if __name__ == '__main__':
    terminate_chrome_processes()

3. 程式碼詳解

  • psutil.process_iter(['pid', 'name']) : 遍歷系統中的所有程序,並獲取每個程序的程序 ID (PID) 和名稱。這使得我們能夠篩選出目標程序。

  • proc.info['name'] == 'chrome.exe' : 檢查程序名稱是否為 'chrome.exe',這是 Google Chrome 在 Windows 上的預設程序名稱。

  • proc.terminate() : 嘗試終止符合條件的程序。如果程序無法被終止,例如由於許可權問題或程序已不存在,將會丟擲異常。

  • 異常處理

    • psutil.NoSuchProcess:當程序不存在時丟擲。

    • psutil.AccessDenied:當權限不足以終止程序時丟擲。

    • psutil.ZombieProcess:處理殭屍程序的異常。

4. 執行指令碼

將上述程式碼儲存為一個 Python 指令碼檔案(例如 terminate_chrome.py)。在命令列中執行以下命令以執行指令碼:

python terminate_chrome.py

執行該指令碼後,它將自動查詢並終止所有正在執行的 Google Chrome 程序,並在終端輸出已終止的程序 ID 和名稱。

5. 注意事項

  • 許可權問題:確保在執行指令碼時具有足夠的許可權來終止系統程序。在某些情況下,您可能需要以管理員身份執行指令碼。

  • 安全性:請謹慎使用此指令碼,確保只在必要時終止程序,以避免意外關閉重要應用程式。

總結

透過使用 Python 和 psutil 庫,您可以高效地管理 Windows 上的程序。本文介紹瞭如何編寫一個簡單的指令碼來關閉 Google Chrome 瀏覽器,您可以根據需要修改指令碼來關閉其他應用程式。

0則評論

您的電子郵件等資訊不會被公開,以下所有項目均必填

OK! You can skip this field.