Fkill es una herramienta en linea de comandos que nos permite finalizar procesos en ejecución. Es multiplataforma (funciona en Linux, macOS y Windows), con licencia libre MIT y construida en Node.js.
Bastante similar a viejos conocidos del sistema del pingüino como kill, killall, xkill, pkill, etc. Fkill destaca por su capacidad interactiva y suavidad a la hora de deshacerse de esas aplicaciones y procesos errantes que se resisten a morir.
La forma más sencilla de probarlo es escribir el nombre del programa sin argumentos, simplemente:
fkill ? Running processes: (Use arrow keys or type to search) ❯ systemd 635 (sd-pam) 636 startkde 644 dbus-daemon 653 start_kdeinit 680 kdeinit5 681 klauncher 682 kded5 685 kglobalaccel5 704 kaccess 707 (Move up and down to reveal more choices)
dicho comando nos muestra la lista de todos los procesos actualmente en uso.
Utilizando las teclas direccionales nos podemos mover arriba y abajo en busca de nuestro objetivo. Si queremos acortar la búsqueda, basta con escribir algunos caracteres, para que vaya filtrando resultados por nombre. Seleccionamos nuestro destino, le damos a enter y listo.
Si le añadimos el parámetro «verbose»:
fkill -v
además nos muestra la ruta completa del proceso, así como el PID.
Si queremos un modo de ejecución más específico, podemos optar por el nombre del programa:
fkill clementine
Elegir un número de puerto:
fkill :1716
o bien tirar de PID, el identificador de procesos (ahí por algún motivo me daba error):
fkill 1141
Instalación de fkill
Como os comentaba al principio fkill esta construido en JavaScript (Node.js),lo cual no es muy habitual en este tipo de herramientas en linea de comandos, entre otras cosas por rendimiento. En cualquier caso su consumo sin ser lo ideal, tampoco es demasiado exagerado (unos 40-42 MB).
Se puede instalar por tanto en cualquier sistema, mediante el gestor de paquetes npm (disponible en los repositorios de la mayoría de distribuciones GNU/Linux).
npm install --global fkill-cli
Personalmente no tuve que ir tan lejos. Lo encontré en AUR disponible para Arch Linux y familia (Manjaro, Antergos):
trizen -S fkill
Tenéis más información del proyecto en su página de GitHub.
Construido en node.js…
nmp == de-ninguna-manera
Una herramienta critica como esa que dependa de un servidor nodejs es ambsurdo y casi suicida en un entorno de trabajo. es la primer nota de este blog que me parece amateur, habiendo herramientas como htop que hacen su trabajo a la perfeccion.
Tengo notas peores, créeme 🙂
Lo que me llama la atención de la herramienta no es el lenguaje de programación utilizado, sino el proceso interactivo, su funcionamiento vaya.
Para aquellos interesados no debería ser difícil implementarla en otro lenguaje.
Aquí por ej. está un fork en Go (gkill), que si echas un vistazo al código verás que es muy sencillo.
https://github.com/heppu/gkill
A mi me parece una contribución interesante. El autor ha decidido por lo que sea hacerla en JavaScript, y poner su código a disposición del que quiera usarla o mejorarla. Quizás más adelante cree otro proyecto en otro lenguaje que guste a más gente.
Lo que quiero decir es que si alguien se toma su tiempo en crear algo para la comunidad tampoco es cuestión de desincentivarlo, ahí a la primera.
A todo esto no hay obligación de instalar o usar todas las cosas que comento en el blog.
Bien dicho. Sino me gusta no lo instalo y ya!
killall fkill