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
de Linux comando.
Cómo usar el pidof
Comando #
Hay diferentes implementaciones de pidof
para distribuciones basadas en Red Hat y Debian. En las distribuciones de Red Hat, el pidof
El 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
El comando es el siguiente:
pidof [OPTIONS] PROGRAM_NAME
El comando acepta cero o más nombres como argumentos, pero normalmente, 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 con 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
mostrará los PID de ambos programas en ejecución.
De forma predeterminada, se muestran todos los PID de los programas en ejecución coincidentes. Utilice el -s
opción para forzar pidof
para mostrar solo un PID:
pidof -s program_name
El -o
La 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 -o
opción, puede usar un PID especial llamado %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 -c
opción.
Esta opción solo funciona pidof
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 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 el SEGTERM
señal para terminar con todos ellos:
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
El 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 buscas.
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.