Linux
殺死所有使用 qt5 的程序
我想執行一個與使用某個圖形框架有衝突的python腳本:
ImportError: Cannot load backend 'TkAgg' which requires the 'tk' interactive framework, as 'qt5' is currently running
因此,我想問是否有辦法確定目前正在使用的所有程序
qt5
並根據結果殺死這些程序,以便我可以執行我的腳本。(該腳本在 qt5 問題之前執行良好 - 不知道這個新問題是由哪個應用程序引起的)。
這使用 libnss_files-2.23.so 在我的機器上找到前 5 個pid。
$ for p in /proc/[0-9]* do test -d $p/map_files && sudo ls -l $p/map_files | awk -vpid=$(basename $p) -vname=libnss_files-2.23.so -F '->' \ '$2 ~ name {print pid; exit}' done | head -5 1114 1155 12066 12148 12156
這些天在 Linux 上,查找所有具有屬性 X的 pid 經常用 procfs 解決。