
如何從命令列殺死火狐瀏覽器?
我努力了:
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
- 打開終端並使其全螢幕
- 鍵入
ps -ef | grep firefox
以顯示所有 Firefox 進程 - 進程 ID 號碼是第二列
- 您可能正在追隨位於頂部的那個有爭論的人
-new-window
(它並不總是位於頂部) - 如果您不確定,請輸入
top
並確認您要終止的 Firefox 進程的進程 ID - 然後輸入
kill -9 1234
1234 = 您的進程 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 是一個守護進程,將監視請求的名稱並在它們變為活動進程時殺死它們
你可以在這裡找到它: