GNU/Linux >> Tutoriales Linux >  >> Linux

Comando Ps en Linux (Lista de Procesos)

En Linux, una instancia en ejecución de un programa se denomina proceso. Ocasionalmente, cuando trabaje en una máquina Linux, es posible que necesite averiguar qué procesos se están ejecutando actualmente.

Hay varios comandos que puede usar para encontrar información sobre los procesos en ejecución, con ps , pstree y top siendo los más utilizados.

Este artículo explica cómo usar el ps Comando para enumerar los procesos que se están ejecutando actualmente y mostrar información sobre esos procesos.

Cómo usar ps Comando #

La sintaxis general para ps El comando es el siguiente:

ps [OPTIONS]

Por razones históricas y de compatibilidad, ps El comando acepta varios tipos diferentes de opciones:

  • Opciones de estilo UNIX, precedidas por un solo guión.
  • Opciones de estilo BSD, usadas sin guión.
  • Opciones largas de GNU, precedidas por dos guiones.

Se pueden mezclar diferentes tipos de opciones, pero en algunos casos particulares, pueden aparecer conflictos, por lo que es mejor quedarse con un tipo de opción.

Las opciones de BSD y UNIX se pueden agrupar.

En su forma más simple, cuando se usa sin ninguna opción, ps imprimirá cuatro columnas de información para un mínimo de dos procesos que se ejecutan en el shell actual, el propio shell y los procesos que se ejecutan en el shell cuando se invocó el comando.

ps

La salida incluye información sobre el shell (bash ) y el proceso que se ejecuta en este shell (ps , el comando que escribiste):

  PID TTY          TIME CMD
 1809 pts/0    00:00:00 bash
 2043 pts/0    00:00:00 ps

Las cuatro columnas están etiquetadas como PID , TTY , TIME y CMD .

  • PID - El identificador del proceso. Por lo general, cuando se ejecuta ps comando, la información más importante que busca el usuario es el PID del proceso. Conocer el PID le permite eliminar un proceso que no funciona correctamente.
  • TTY - El nombre del terminal de control del proceso.
  • TIME - El tiempo de CPU acumulado del proceso, que se muestra en minutos y segundos.
  • CMD - El nombre del comando que se utilizó para iniciar el proceso.

El resultado anterior no es muy útil ya que no contiene mucha información. El verdadero poder del ps El comando viene cuando se inicia con opciones adicionales.

El ps El comando acepta una gran cantidad de opciones que se pueden usar para mostrar un grupo específico de procesos y diferente información sobre el proceso, pero solo se necesitan unas pocas en el uso diario.

ps se usa más frecuentemente con la siguiente combinación de opciones:

formulario BSD :

ps aux
  • El a opción le dice a ps para mostrar los procesos de todos los usuarios. Solo no se muestran los procesos que no están asociados a una terminal y los procesos de los líderes de grupo.
  • u significa un formato orientado al usuario que proporciona información detallada sobre los procesos.
  • El x opción instruye a ps para listar los procesos sin una terminal de control. Esos son principalmente procesos que se inician en el momento del arranque y se ejecutan en segundo plano.

El comando muestra información en once columnas etiquetadas como USER , PID , %CPU , %MEM , VSZ , RSS , STAT , START , TTY , TIME y CMD .

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.8  77616  8604 ?        Ss   19:47   0:01 /sbin/init
root         2  0.0  0.0      0     0 ?        S    19:47   0:00 [kthreadd]
...

Ya explicamos PID , TTY , TIME y CMD etiquetas. Aquí hay una explicación de otras etiquetas:

  • USER - El usuario que ejecuta el proceso.
  • %CPU - La utilización de cpu del proceso.
  • %MEM - El porcentaje del tamaño del conjunto residente del proceso en la memoria física de la máquina.
  • VSZ - Tamaño de memoria virtual del proceso en KiB.
  • RSS - El tamaño de la memoria física que utiliza el proceso.
  • STAT - El código de estado del proceso, como Z (zombi), S (dormido) y R (corriendo).
  • START - La hora en que se inició el comando.

El f opción le dice a ps para mostrar una vista de árbol de los procesos de padre a hijo:

ps auxf

El ps El comando también le permite ordenar la salida. Por ejemplo, para ordenar la salida según el uso de la memoria, usaría:

ps aux --sort=-%mem

formulario UNIX :

ps -ef
  • El -e opción instruye a ps para mostrar todos los procesos.
  • El -f destaca la lista de formato completo, que proporciona información detallada sobre los procesos.

El comando muestra información en ocho columnas etiquetadas como UID , PID , PPID , C , STIME , TIME y CMD .

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 19:47 ?        00:00:01 /sbin/init
root         2     0  0 19:47 ?        00:00:00 [kthreadd]
...

Las etiquetas que no están ya explicadas tienen el siguiente significado:

  • UID - Igual que USER , el usuario que ejecuta el proceso.
  • PPID - El ID del proceso padre.
  • C - Igual que %CPU , la utilización de la CPU del proceso.
  • STIME - Igual que START , la hora en que se inició el comando.

Para ver solo los procesos que se ejecutan como un usuario específico, escriba el siguiente comando, donde linuxize es el nombre del usuario:

ps -f -U linuxize -u linuxize

Formato definido por el usuario #

El o La opción le permite especificar qué columnas se muestran cuando se ejecuta el ps comando.

Por ejemplo, para imprimir información solo sobre el PID y COMMAND , ejecutaría uno de los siguientes comandos:

ps -efo pid,comm
ps auxo pid,comm

Usando ps Con otros comandos #

ps se puede usar en combinación con otros comandos a través de tuberías.

Si desea mostrar la salida de ps comando, una página a la vez canalícelo a less comando:

ps -ef | less

La salida del ps El comando se puede filtrar con grep . Por ejemplo, para mostrar solo el proceso que pertenece al usuario raíz, ejecutaría:

ps -ef | grep root

Conclusión #

El ps El comando es uno de los comandos más utilizados al solucionar problemas en los sistemas Linux. Tiene muchas opciones, pero por lo general, la mayoría de los usuarios usan ps aux o ps -ef para recopilar información sobre los procesos en ejecución.

Para más información sobre ps , escribe man ps en tu terminal.

Si tiene alguna pregunta o comentario, no dude en dejar un comentario.


Linux
  1. 30 ejercicios de procesos de Linux para administradores de sistemas

  2. comando linux ps

  3. Comando ls de Linux - Lista de archivos

  4. Ejemplos de comandos kill en Linux

  5. Opciones del comando nohup en Linux

Comando Linux PS con ejemplos

Comando SS en Linux

Supervisión de procesos en Linux

Cómo MATAR un proceso en Linux

Cómo enumerar discos en Linux

Ejemplos de comandos lsattr en Linux