Linux es amado por desarrolladores y entusiastas por igual. Puede hacer muchas cosas que normalmente no puede hacer en sistemas operativos como Windows y OSX.
Linux es el mejor sistema operativo para programadores, desarrolladores y cualquier persona que quiera comprender los sistemas operativos correctamente. Ahora Linux tiene muchas funciones y capacidades. Hoy aprenderá sobre los comandos pgrep y pkill de Linux y cómo puede usarlos para que su experiencia con Linux valga la pena. Como sugiere el nombre, el comando pgrep se usa para buscar el proceso en función del nombre y el comando pkill terminará o eliminará el proceso en función del nombre.
requisitos previos
- Un sistema operativo Linux (las capturas de pantalla son de una máquina centos/rhel)
comando pgrep
Sintaxis: # pgrep [options] patrón
La mayoría de los usuarios de Linux reconocen el comando grep que se usa para encontrar palabras o caracteres específicos. pgrep funciona casi de la misma manera. El comando pgrep se usa al buscar procesos (según el nombre) que se están ejecutando en el sistema en el momento del uso.
Profundicemos en ejemplos de comandos pgrep,
Ejemplo: 1) Lista de ID de proceso propiedad de un usuario específico (-u)
Cuando se usa, pgrep enumera los ID de proceso que coinciden con los criterios que especifica. Por ejemplo, cuando escribe;
[[email protected] ~]# pgrep -u apache httpd 1274 1275 1278 1282 1283 1284 1286 1291 [[email protected] ~]#
El sistema enumera todos los procesos llamados httpd que son propiedad del usuario de apache.
Ejemplo: 2) Listar todos los procesos propiedad de múltiples usuarios
Supongamos que queremos enumerar todos los procesos propiedad del usuario root y apache, ejecute el siguiente comando,
[[email protected] ~]# pgrep -u apache,root
Aquí los usuarios están separados por comas (,)
Producción:
Ejemplo: 3) Número de conteo del proceso de coincidencia (-c)
Supongamos que queremos contar el proceso numérico propiedad de Apache y el usuario root, ejecute el siguiente comando
[[email protected] ~]# pgrep -u apache -c 8 [[email protected] ~]# pgrep -u root -c 95 [[email protected] ~]#
En el comando anterior, la opción ‘-c’ se usa para contar el número de procesos asociados a un usuario.
Ejemplo: 4) Enumere los ID de proceso junto con el nombre del proceso (-l y -a)
Supongamos que queremos enumerar los ID de proceso y el nombre del proceso asociado a un usuario, luego use -l o -a opción en el comando pgrep. La opción -l enumerará solo el nombre del proceso, mientras que -a enumerará la ruta completa del nombre del proceso,
[[email protected] ~]# pgrep -u apache -l 4353 httpd 4354 httpd 4355 httpd 4356 httpd 4357 httpd 4358 httpd 4359 httpd 4360 httpd [[email protected] ~]# [[email protected] ~]# pgrep -u apache -a 4353 /usr/sbin/httpd -DFOREGROUND 4354 /usr/sbin/httpd -DFOREGROUND 4355 /usr/sbin/httpd -DFOREGROUND 4356 /usr/sbin/httpd -DFOREGROUND 4357 /usr/sbin/httpd -DFOREGROUND 4358 /usr/sbin/httpd -DFOREGROUND 4359 /usr/sbin/httpd -DFOREGROUND 4360 /usr/sbin/httpd -DFOREGROUND [[email protected] ~]#
Ejemplo 5) Enumere los ID de proceso asociados a un usuario utilizando el delimitador personalizado (-d)
Usar ‘-D‘ opción en pgrep para enumerar los ID de proceso del usuario usando un delimitador personalizado, supongamos que enumeramos los ID de proceso asociados al usuario de Apache separados por coma (,) o espacio.
[[email protected] ~]# pgrep -u apache -d, 4353,4354,4355,4356,4357,4358,4359,4360 [[email protected] ~]# pgrep -u apache -d" " 4353 4354 4355 4356 4357 4358 4359 4360 [[email protected] ~]#
Ejemplo: 6) Enumere el nombre del proceso más nuevo y su id (-n)
Supongamos que queremos enumerar el nombre del proceso más nuevo y sus ID propiedad del usuario root, ejecute el comando pgrep debajo
Sintaxis:
# pgrep -u
[[email protected] ~]# pgrep -u root -n -l 11255 kworker/0:2 [[email protected] ~]#
Ejemplo: 7) Enumere el nombre del proceso más antiguo y su id (-o)
Supongamos que queremos enumerar el nombre del proceso más antiguo y sus ID propiedad del usuario raíz, ejecute debajo del comando pgrep
Sintaxis:
# pgrep -u
[[email protected] ~]# pgrep -u root -o -l 1 systemd [[email protected] ~]#
Ejemplo: 8) Proceso de búsqueda con su nombre
Supongamos que queremos enumerar todos los ID de proceso asociados al proceso de postgres
[[email protected] ~]# pgrep postgres -l 1233 postgres 1234 postgres 4465 postgres 4469 postgres [[email protected] ~]#
Y así es como usamos pgrep. Pasemos al comando pkill
comando pkill
El comando pkill se usa para matar procesos a través de la línea de comandos. A diferencia del comando kill, pkill no necesita que ingrese la ID del proceso que está tratando de terminar.
Entonces, ¿cómo se usa pkill? Simple, escriba pkill con el nombre del proceso que desea eliminar como entrada.
Sintaxis:
# matar [options]
Ejemplo: 9) Matar proceso por su nombre (pkill {process_name})
Por ejemplo, si desea eliminar el proceso de postgres, simplemente escriba;
[[email protected] ~]# pkill postgres [[email protected] ~]#
Si el proceso de postgres se está ejecutando, finalizará instantáneamente.
Ejemplo: 10) Terminar el proceso enviando una señal diferente (–señal)
Por defecto, el comando pkill usa “SIGTERMseñal ” durante su ejecución. Podemos cambiar esta señal predeterminada usando “-señalopción ” en el comando pkill, por ejemplo,
[[email protected] ~]# pkill --signal SIGKILL postgres [[email protected] ~]#
Ejemplo: 11) proceso de eliminación basado en el comando completo (-f)
Podemos indicarle al comando pkill que elimine un proceso basado en el comando completo en lugar del nombre del proceso usando el -F opción. ¿Qué significa esto? Digamos que se están ejecutando dos comandos ping en su sistema.
hacer ping a google.com
hacer ping a linuxtechi.com
Ahora, si el requisito es solo terminar el comando ‘ping google.com’ usando pkill. Puede usar pkill de la siguiente manera:
[[email protected] ~]# pkill -f "ping google.com" [[email protected] ~]#
Observe que se utiliza la opción -f. Si hubieras usado;
[[email protected] ~]# pkill ping
entonces ambos comandos serán terminados.
Pensamientos finales
En esta guía, ha aprendido todo acerca de los comandos pgrep y pkill usando ejemplos prácticos.
En resumen, pgrep es un comando que se usa al buscar procesos que se están ejecutando en el sistema en el momento del uso. Su sintaxis es pgrep [options] patrón.
Por otro lado, pkill se usa para matar procesos a través de la línea de comandos. Su sintaxis es pkill [options]
Puede utilizar los dos comandos para aprovechar aún más la capacidad y la flexibilidad de Linux. Ahora que tienes toda la información, ¿qué te parece? Por favor, deje un comentario y estaremos encantados de responder.