Cómo matar Firefox desde la línea de comando

Cómo matar Firefox desde la línea de comando

¿Cómo matar Firefox desde la línea de comando?

Yo he tratado:

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/

Todo en vano.

ingrese la descripción de la imagen aquí

La salida de

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

es

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

Respuesta1

tl;dr: pkill -f firefoxfunciona.

Encontré esto en las pkill/pgreppáginas de manual:

El nombre del proceso utilizado para la comparación está limitado a los 15 caracteres presentes en la salida de /proc/pid/stat. Utilice la opción -f para compararla con la línea de comando completa, /proc/pid/cmdline.

Al /usr/lib/firefox/firefoxtener PID 691953al realizar pruebas localmente en mi máquina, encontré lo siguiente en /proc/691953/stat:

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

Haciendo un pkill GeckoMainFirefox matado como prometí. killall GeckoMainFunciona también.

La solución más sencilla es probablemente proporcionar la -fbandera para pkillcomparar /proc/<pid>/cmdline, que en mi caso contenía /usr/lib/firefox/firefox.

Respuesta2

killsolo funciona con el ID del proceso

  1. Abra una terminal y póngala en pantalla completa.
  2. Escriba ps -ef | grep firefoxpara mostrar TODOS los procesos de Firefox
  3. El número de identificación del proceso es la segunda columna.
  4. Probablemente estés detrás del que está en la parte superior con un argumento -new-window(no siempre está en la parte superior)
  5. Si no está seguro, escriba topy confirme el ID del proceso de Firefox que desea eliminar.
  6. Luego escriba kill -9 1234donde 1234 = su ID de proceso.

Respuesta similaraquí

Respuesta3

Sé que necesitas un comando simple. Será mejor que hagas un alias para:

pgrep firefox | xargs kill

Ej.: un mando permanente. Edite su archivo ./bashrc.

$ vim ~/.bashrc

Busque un lugar en el archivo donde desee conservar los alias. Por ejemplo, puede agregarlos al final del archivo. Para fines de organizaciones, puede dejar un comentario antes de sus alias, algo como este:

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

Si desea utilizar el alias recién definido foxkilleren la sesión actual, emita el siguiente comando:

$ source ~/.bashrc

Entonces tendrás un foxkillercomando para matar Firefox.

Respuesta4

He escrito una pequeña aplicación en C, que funciona

kkill firefox

matará todas las instancias en ejecución

No hace falta decir que se puede utilizar para cualquier nombre de proceso.

kkiller es un demonio, buscará nombres solicitados y los eliminará si se convierten en procesos activos.

Lo puedes encontrar aquí:

kkill, kkiller en GitHub

información relacionada