Process

從中獲取程序的 PID

  • April 4, 2014

我有一個執行檔的路徑。假設我想刪除這個文件。

我需要找到使用這個文件啟動的所有程序並殺死它們。最好的方法是什麼?

也許lsof(列出打開的文件)可以幫​​助你。

列出使用特定文件的所有程序:

lsof /path/to/your/specific/file

添加該-t選項將僅返回使用給定文件的 PID。


因此,您可以從那裡終止所有使用特定文件的程序:

lsof -t /path/to/your/specific/file | while read PID; do kill -9 $PID; done

或類似的東西:

kill -9 $(lsof -t /path/to/your/specific/file)

現在,假設您在 *nix 世界中,您可以使用fuser命令。

fuser <file_name>

將列出使用該文件的所有程序 pid。要殺死訪問文件的程序,

fuser -k <file_name>

引用自:https://serverfault.com/questions/586569