Linux

殺死所有使用 qt5 的程序

  • October 11, 2021

我想執行一個與使用某個圖形框架有衝突的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 解決。

引用自:https://unix.stackexchange.com/questions/615729