我有一个可执行文件的路径。假设我想删除此文件。
我需要找到使用此文件启动的所有进程并终止它们。最好的方法是什么?
答案1
或许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)
答案2
现在,假设您身处 *nix 世界,您可以使用fuser
命令。
fuser <file_name>
将列出使用该文件的所有进程 pid。要终止访问该文件的进程,
fuser -k <file_name>
答案3
假设你指的是 Windows,你可以使用进程监控来自 Windows SysInternals 套件