Cómo encontrar ID de proceso con el comando Pgrep en Linux

1 mar 2021 2 min di lettura
Cómo encontrar ID de proceso con el comando Pgrep en Linux
Indice dei contenuti

Introducción

pgrep es una utilidad de línea de comandos que le permite encontrar los ID de proceso de un programa en ejecución según ciertos criterios. Puede ser un nombre de proceso completo o parcial, un usuario que ejecuta el proceso u otros atributos.

El pgrep es parte del procps (o procps-ng ), que está preinstalado en casi todas las distribuciones de Linux.

Este artículo cubre los conceptos básicos del pgrep

Utilice el comando pgrep

La sintaxis del pgrep es la siguiente:

pgrep [OPTIONS] <PATTERN>

La <PATTERN> se especifica mediante expresiones regulares extendidas.

Si se invoca sin ninguna opción, pgrep muestra 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:

pgrep ssh

Si hay procesos en ejecución con nombres que coincidan con "ssh", sus PID se mostrarán en la pantalla. Si no se encuentra ninguna coincidencia, la salida está en blanco.

947
 1089
 1104
 4925
 4926

El comando devuelve 0 cuando al menos un proceso 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.

pgrep imprime cada ID de proceso coincidente en una nueva línea. La -d permite especificar un delimitador diferente. Por ejemplo, si desea usar un espacio como delimitador, ingrese:

pgrep ssh -d' '
947 1089 1104 4930 4954

La -l permite a pgrep mostrar el nombre del proceso junto con su ID:

pgrep ssh -l

pgrep usa expresiones regulares para realizar la operación de búsqueda y listará todos los procesos que contienen "ssh" en sus nombres:

947 sshd
 1089 ssh-agent
 1104 sshd

Si desea hacer coincidir solo procesos cuyos nombres sean exactamente como el patrón de búsqueda, debe usar:

pgrep '^sshd$' -l
947 sshd
 1104 sshd

El carácter de intercalación ( ^ ) coincide con el principio de la cadena y el dólar $ al final.

De forma predeterminada, pgrep solo coincide con el nombre del proceso. -f se usa la opción -f, el comando coincide con listas de argumentos completas.

pgrep -f ssh

Utilice la -u para ver los procesos ejecutados por un usuario en particular:

pgrep -u root

Para especificar varios usuarios, separe sus nombres con comas:

pgrep -u root,alice

También puede combinar opciones y patrones de búsqueda. Por ejemplo, para imprimir todos los procesos y sus nombres que se ejecutan bajo el nombre "alice" del usuario y tienen "gnome" en sus nombres, escriba:

pgrep -l -u alice gnome

Para ver solo los procesos iniciados más antiguos o más recientes, use la -n (para el más reciente) o -o (para el más antiguo).

Por ejemplo, para encontrar el proceso más reciente iniciado por el usuario "alice", ingrese:

pgrep -lnu alice

Como puede ver en el ejemplo anterior, también puede combinar opciones sin un espacio entre ellas y con un solo guión.

Para revertir la coincidencia, es decir, para mostrar solo los procesos que no coinciden con los criterios especificados, use la opción -v El siguiente comando imprimirá todos los procesos que no son ejecutados por el usuario "alice":

pgrep -v -u alice

La -c le dice a pgrep que imprima solo el recuento de trabajos coincidentes. Por ejemplo, para buscar procesos que se ejecutan como "alice" del usuario, ingrese:

pgrep -c -u alice

Conclusión

El pgrep se utiliza para averiguar los PID de un programa en ejecución según diferentes criterios.

Para obtener más información sobre la pgrep de comandos, visite el hombre pgrep página o escriba el man pgrep su terminal:

man pgrep
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.