如何從命令列殺死火狐

如何從命令列殺死火狐

如何從命令列殺死火狐瀏覽器?

我努力了:

pkill firefox # the command was known to work previously
pkill -9 firefox
kill -9 firefox # descibed in https://unix.stackexchange.com/questions/8916/when-should-i-not-kill-9-a-process
bash: kill: firefox: arguments must be process or job IDs
killall firefox #described in https://appuals.com/restart-firefox-command-line/

一切都是徒勞。

在此輸入影像描述

的輸出

ps aux | grep -i firefox | grep -v grep

v           2419  1.7  7.7 4026824 458876 ?      Sl   12:56   0:51 /usr/lib/firefox/firefox -new-window
v           2483  0.0  0.6 190540 38684 ?        Sl   12:56   0:00 /usr/lib/firefox/firefox -contentproc -parentBuildID 20210927210923 -prefsLen 1 -prefMapSize 246254 -appdir /usr/lib/firefox/browser 2419 true socket
v           2515  0.0  2.0 2407620 119704 ?      Sl   12:56   0:01 /usr/lib/firefox/firefox -contentproc -childID 1 -isForBrowser -prefsLen 102 -prefMapSize 246254 -jsInit 286204 -parentBuildID 20210927210923 -appdir /usr/lib/firefox/browser 2419 true tab
v           2553  0.5  2.6 2572708 156816 ?      Sl   12:56   0:16 /usr/lib/firefox/firefox -contentproc -childID 2 -isForBrowser -prefsLen 268 -prefMapSize 246254 -jsInit 286204 -parentBuildID 20210927210923 -appdir /usr/lib/firefox/browser 2419 true tab
v           2581  0.0  1.6 2406928 99740 ?       Sl   12:56   0:01 /usr/lib/firefox/firefox -contentproc -childID 3 -isForBrowser -prefsLen 4889 -prefMapSize 246254 -jsInit 286204 -parentBuildID 20210927210923 -appdir /usr/lib/firefox/browser 2419 true tab
v           2612  0.3  3.7 2648096 225204 ?      Sl   12:56   0:09 /usr/lib/firefox/firefox -contentproc -childID 4 -isForBrowser -prefsLen 5588 -prefMapSize 246254 -jsInit 286204 -parentBuildID 20210927210923 -appdir /usr/lib/firefox/browser 2419 true tab
v           2866  0.0  1.2 2373260 72628 ?       Sl   12:58   0:00 /usr/lib/firefox/firefox -contentproc -childID 5 -isForBrowser -prefsLen 5701 -prefMapSize 246254 -jsInit 286204 -parentBuildID 20210927210923 -appdir /usr/lib/firefox/browser 2419 true tab
v           2998  0.0  0.6 194220 39176 ?        Sl   13:12   0:00 /usr/lib/firefox/firefox -contentproc -parentBuildID 20210927210923 -prefsLen 5926 -prefMapSize 246254 -appdir /usr/lib/firefox/browser 2419 true rdd

答案1

tl;dr:pkill -f firefox確實有效。

我在pkill/pgrep手冊頁中找到了這個:

用於匹配的進程名稱限制為 /proc/pid/stat 輸出中存在的 15 個字元。使用 -f 選項來匹配完整的命令列 /proc/pid/cmdline。

在我的機器上進行本地測試時,由於/usr/lib/firefox/firefox有 PID 691953,我在 中發現了以下內容/proc/691953/stat

691953 (GeckoMain) .... # truncated by me

按照承諾殺死pkill GeckoMain了火狐。killall GeckoMain也有效。

最簡單的解決方法可能是提供-f標誌來pkill匹配/proc/<pid>/cmdline,在我的例子中包含/usr/lib/firefox/firefox

答案2

kill僅適用於進程 ID

  1. 打開終端並使其全螢幕
  2. 鍵入ps -ef | grep firefox以顯示所有 Firefox 進程
  3. 進程 ID 號碼是第二列
  4. 您可能正在追隨位於頂部的那個有爭論的人-new-window(它並不總是位於頂部)
  5. 如果您不確定,請輸入top並確認您要終止的 Firefox 進程的進程 ID
  6. 然後輸入kill -9 12341234 = 您的進程 ID。

類似的答案這裡

答案3

我知道你需要一個簡單的命令。最好為以下物件建立一個別名:

pgrep firefox | xargs kill

例如:永久命令。編輯您的 ./bashrc 檔案。

$ vim ~/.bashrc

在檔案中找到要保留別名的位置。例如,您可以將它們新增至文件末尾。出於組織目的,您可以在別名前留下評論,如下所示:

alias foxkiller="pgrep firefox | xargs kill 2>/dev/null"

如果要foxkiller在目前會話中使用新定義的別名,請發出以下命令:

$ source ~/.bashrc

這樣你就會有一個foxkiller殺死 Firefox 的指令。

答案4

我寫了一個小型 C 應用程序,它可以解決問題

殺死火狐

將殺死所有正在運行的實例

不用說,它可以用於任何進程名稱

kkiller 是一個守護進程,將監視請求的名稱並在它們變為活動進程時殺死它們

你可以在這裡找到它:

kkill,GitHub 上的 kkiller

相關內容