GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué significa aux en `ps aux`?

a =mostrar procesos para todos los usuarios
u =mostrar el usuario/propietario del proceso
x =también muestra procesos no conectados a una terminal

Por cierto, man ps es un buen recurso.

Históricamente, BSD y AT&T desarrollaron versiones incompatibles de ps . Las opciones sin un guión inicial (según la pregunta) son del estilo BSD, mientras que las que tienen un guión inicial son del estilo AT&T Unix. Además de esto, Linux desarrolló una versión que admite ambos estilos y luego le agrega un tercer estilo con opciones que comienzan con guiones dobles.

Todas (o casi todas) las distribuciones de Linux no integradas utilizan una variante de la suite procps. Las opciones anteriores están definidas en el procps ps página man.

En los comentarios, dices que estás usando Apple MacOS (OSX, supongo). La página de manual de OSX para ps está aquí y muestra soporte solo para el estilo de AT&T.


   a      Lift the BSD-style "only yourself" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.  
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          with a terminal (tty), or to list all processes when used together 
          with the x option.

   u      Display user-oriented format.

   x      Lift the BSD-style "must have a tty" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          owned by you (same EUID as ps), or to list all processes when used 
          together with the a option.

Ejemplo

$ ps aux | head -10
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  51120  2796 ?        Ss   Dec22   0:09 /usr/lib/systemd/systemd --system --deserialize 22
root         2  0.0  0.0      0     0 ?        S    Dec22   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Dec22   0:04 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Dec22   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S    Dec22   0:15 [migration/0]
root         8  0.0  0.0      0     0 ?        S    Dec22   0:00 [rcu_bh]
root         9  0.0  0.0      0     0 ?        S    Dec22   2:47 [rcu_sched]
...
saml      3015  0.0  0.0 117756   596 pts/2    Ss   Dec22   0:00 bash
saml      3093  0.9  4.1 1539436 330796 ?      Sl   Dec22  70:16 /usr/lib64/thunderbird/thunderbird
saml      3873  0.0  0.1 1482432 8628 ?        Sl   Dec22   0:02 gvim -f
root      5675  0.0  0.0 124096   412 ?        Ss   Dec22   0:02 /usr/sbin/crond -n
root      5777  0.0  0.0  51132  1068 ?        Ss   Dec22   0:08 /usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplica
saml      5987  0.7  1.5 1237740 119876 ?      Sl   Dec26  14:05 /opt/google/chrome/chrome --type=renderer --lang=en-
root      6115  0.0  0.0      0     0 ?        S    Dec27   0:06 [kworker/0:2]
...

Con los interruptores anteriores, obtendrá resultados con respecto a sus procesos como los anteriores.

Los interruptores aux te mostrará:

  • todos los procesos de los usuarios
  • le muestra el proceso enumerado de forma orientada al usuario (por nombres de usuario)
  • le muestra todos los procesos, no solo los que están conectados a una terminal. Esto incluirá procesos como servicios como crond, upowerd, etc.

La clave para comprender la página de manual no es buscar "aux" (que probé primero), sino centrarse en la sección que describe los tipos de parámetros ps toma:

Esta versión de ps acepta varios tipos de opciones:

  1. Opciones de UNIX, que se pueden agrupar y deben estar precedidas por un guión.
  2. Opciones de BSD, que pueden agruparse y no deben usarse con un guión.
  3. Opciones largas de GNU, que van precedidas de dos guiones.

A partir de esto, sabemos que aux es un conjunto de opciones BSD (agrupadas), a , u y x , lo que los hace un poco más fáciles de buscar.

  • a y x controlar qué procesos se seleccionan y se usan juntos se describen explícitamente para seleccionar todos los procesos.

  • u salidas utilizando el formato "orientado al usuario", que proporciona más columnas, incluida la identificación del usuario y el uso de CPU/memoria.

Porque u solo controla el formato de salida, puede obtener una salida de estilo "ps aux" solo para procesos específicos con ps u $pid1 $pid2 ... .


Linux
  1. ¿Qué significa "agradable" en la pestaña Procesos?

  2. ¿Qué significa esta advertencia?

  3. ¿Qué significa rc en archivos de puntos?

  4. ¿Qué significa #define X X?

  5. ¿Qué significa matar -3?

¿Qué significa chmod 777?

¿Qué significa ser "sh compatible"?

No hay variable X11 DISPLAY - ¿qué significa?

¿Qué pasa si [[ $? -ne 0 ]]; significa en .ksh

¿Qué significa la capacidad ep?

¿Qué significa %st en la parte superior?