pidof
es una utilidad de línea de comandos que le permite encontrar el ID de proceso de un programa en ejecución.
En este artículo, explicaremos cómo usar el pidof
comando de Linux.
Cómo usar el pidof
comando
Existen diferentes implementaciones de pidof
para distribuciones basadas en Red Hat y Debian. En las distribuciones de Red Hat, el pidof
comando es parte del procps-ng
paquete, mientras que en Debian, es parte de sysvinit-utils
. Repasaremos las opciones que son comunes para ambas implementaciones.
La sintaxis del pidof
comando es la siguiente:
pidof [OPTIONS] PROGRAM_NAME
El comando acepta cero o más nombres como argumentos, pero, por lo general, solo pasaría un nombre a pidof
.
Cuando se invoca sin ninguna opción, pidof
imprimirá los PID de todos los programas en ejecución que coincidan con el nombre dado. Por ejemplo, para encontrar el PID del servidor SSH, ejecutaría:
pidof sshd
Si hay procesos en ejecución con nombres que coinciden sshd
, sus PID se mostrarán en la pantalla. Si no se encuentran coincidencias, la salida estará vacía.
4382 4368 811
pidof
devuelve 0
cuando al menos un programa en ejecución coincide con el nombre solicitado. De lo contrario, el código de salida es 1
. Esto puede ser útil al escribir scripts de shell.
Para asegurarse de que solo se muestren los PID del programa que está buscando, use la ruta completa del programa como argumento. Por ejemplo, si tiene dos programas en ejecución con el mismo nombre ubicados en dos directorios diferentes, pidof
se mostrarán los PID de ambos programas en ejecución.
De forma predeterminada, se muestran todos los PID de los programas en ejecución coincidentes. Use la -s
opción para forzar pidof
a mostrar solo un PID:
pidof -s program_name
La -o
opción le permite excluir un proceso con un PID determinado de la salida del comando:
pidof -o pid program_name
Cuando pidof
se invoca con la -o
opción, puede usar un nombre de PID especial %PPID
que representa el shell que llama o el script de shell.
Para devolver solo los PID de los procesos que se ejecutan con el mismo directorio raíz, use la -c
opción.
Esta opción solo pidof
funciona si se ejecuta como root o sudo
usuario:
pidof -c pid program_name
Ejemplo de uso del pidof
comando
El siguiente ejemplo muestra cómo usar el pidof
comando en combinación con el kill
comando para terminar un programa.
Digamos que el navegador Firefox ha dejado de responder y necesita eliminar los procesos de Firefox. Primero, encuentre los PID, con pidof
:
pidof firefox
El comando imprimirá todos los procesos de Firefox:
2551 2514 1963 1856 1771
Una vez que sepa que Firefox procesa los PID, envíe la SEGTERM
señal para terminarlos todos:
sudo kill -9 2551 2514 1963 1856 1771
También puede usar la expresión de sustitución de comando $(...)
para terminar el programa con un solo comando:
sudo kill -9 $(pidof firefox)
Conclusión
El pidof
comando se utiliza para averiguar los PID de un programa en ejecución específico.
pidof
es un comando simple que no tiene muchas opciones. Por lo general, invocará pidof
solo con el nombre del programa que está buscando.
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.
0 Comentarios