列出Linux 上正在運行的進程和打開的檔案
列出Linux 系統上正在運行的進程是系統管理員和開發人員的常見任務。然而,大多數可用的解決方案都需要直接讀取 /proc/ 檔案系統,這可能容易出錯且效率低下。
避免直接存取/proc/ 檔案系統
為了避免直接存取/proc/ 檔案系統的缺點,可以探索替代方法:
1。 Procps-ng 函式庫 (libproc)
Procps-ng 是一套強大的進程監控工具,其中包含 procps 函式庫 (libproc)。該庫提供了一個全面的 API,用於獲取有關正在運行的進程的信息,包括打開的文件。可從 GitLab 下載:
2. libproc 標頭
大多數Linux 發行版都包含一個名為libproc 的函式庫,它提供了類似procps-ng 的API。 procps-ng 原始程式碼中的 /proc/readproc.c 檔案為理解如何使用該程式庫提供了有用的參考。
使用範例
使用對於這些 API,您可以遵循一般流程:
額外資源
以下是其他可能對您有幫助的資源:
以上是如何在不直接存取 `/proc` 的情況下有效列出 Linux 上正在運行的進程及其開啟的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!