Cómo encontrar el ID de un proceso que se ejecuta con Pidof en Linux

1 mar 2021 2 min di lettura
Cómo encontrar el ID de un proceso que se ejecuta con Pidof en Linux
Indice dei contenuti

Introducción

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 en Linux.

Cómo usar el comando pidof

Hay varias pidof para distribuciones basadas en Red Hat y Debian. En las distribuciones de Red Hat, el pidof es parte del procps-ng, mientras que en Debian es parte del paquete sysvinit-utils Veremos las opciones comunes para ambas implementaciones.

La sintaxis del pidof es la siguiente:

pidof [OPTIONS] PROGRAM_NAME

El comando acepta cero o más nombres como argumentos, pero generalmente solo se pidof un nombre pidof.

Si se invoca sin ninguna opción, pidof imprime los PID de todos los programas en ejecución que coinciden con el nombre especificado. Por ejemplo, para encontrar el PID del servidor SSH, ejecute:

pidof sshd

Si hay procesos que se ejecutan con sshd coincidentes, sus PID se mostrarán en la pantalla. Si no se encuentra ninguna coincidencia, la salida estará en blanco.

3180 664

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 resultar útil cuando se utiliza en scripts de shell.

Para asegurarse de que solo se muestren los PID del programa que está buscando, utilice 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 la opción -s pidof para forzar la visualización de un solo PID:

pidof -s program_name

La -o permite excluir un proceso con un determinado PID de la salida del comando:

pidof -o pid program_name

Cuando se invoca pidof -o, se puede utilizar un PID especial llamado %PPID que representa el shell de llamada o el script de shell.

Para devolver solo los PID de los procesos que se ejecutan en el mismo directorio raíz, utilice la opción -c

Esta opción funciona solo como usuario sudo

pidof -c pid program_name

Ejemplo de uso del comando pidof

El siguiente ejemplo muestra cómo utilizar el pidof de comandos en combinación con la kill de comandos para matar a un programa.

Suponga que el navegador Firefox no ha respondido y es necesario detener los procesos de Firefox. Primero, encuentre los PID, con pidof:

pidof firefox

El comando imprimirá todos los procesos de Firefox:

2661 2534 1134 1476

Una vez que conozca los procesos PID de Firefox, envíe la SEGTERM todos:

sudo kill -9 2661 2534 1134 1476

También puede usar la expresión de sustitución de comando $(...) para finalizar el programa en un solo comando:

sudo kill -9 $(pidof firefox)

Conclusión

El pidof se utiliza para averiguar los PID de un programa en ejecución específico.

pidof es un comando simple que no tiene muchas opciones. Normalmente, invocará pidof solo con el nombre del programa que está buscando.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.