¿Qué significa aux en `ps aux`?

ps aux parece enumerar convenientemente todos los procesos y su estado y uso de recursos (Linux / BSD / MacOS), sin embargo, no puedo comprender el significado del parámetro aux usando man ps.

¿Qué significa aux ¿significa?

Comentarios

  • Por cierto ps = estado del proceso

Respuesta

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

Por cierto, man ps es un buen recurso.

Históricamente, BSD y AT & T desarrolló 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 AT & T estilo 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 usan una variante de procps suite. Las opciones anteriores son las definidas en la procps ps página de manual .

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

Comentarios

  • @HowardGuo ¿Estás seguro de que no es ' t -u en lugar de solo u?
  • @HowardGuo He actualizado la respuesta para reflejar las diferencias entre GNU Versión (Linux) de ps y la versión de Apple OSX. Esta pregunta está etiquetada actualmente como " Linux ". Si también está preguntando sobre MacOS, es posible que desee actualizar las etiquetas.
  • Muchas gracias. Acabo de comprobar la página de manual de ps en Linux y tiene información sobre aux, la página de manual de MacOS ' no tiene dicha información, podría ser un error de documento.
  • La página de manual de OSX para ps dice " … ps aux sigue funcionando como en Tiger " bajo " Descripción heredada " sección.
  • Tengo que objetar el comentario de que " man ps es un buen recurso en mac OSX. La página de manual, solo al final, señala que ps aux se mantiene como una conveniencia, pero no hay absolutamente ningún indicio de que las opciones puedan especificarse sin guiones iniciales antes del final, el hombre La página es larga y muy compleja, y un lector puede pasar mucho tiempo cuestionando su cordura antes de darse por vencido y buscar en Google esta pregunta de intercambio de pila.

Respuesta

 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 usted » Obtendrá resultados con respecto a sus procesos como el anterior.

Los interruptores aux le mostrarán:

  • todos los procesos de los usuarios
  • le muestra el proceso listado de una manera orientada al usuario (por nombre de usuario)
  • le muestra todos los procesos, no solo los conectados a una terminal. Esto incluirá procesos como servicios como crond, upowerd, etc.

Respuesta

La clave para comprender el 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 pueden estar agrupadas y deben ir precedidas de un guión.
  2. Opciones de BSD, que pueden estar agrupadas y no deben usarse con un guión.
  3. Opciones largas de GNU, que están precedidas por dos guiones.

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

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

  • u salidas usando la «orientada al usuario «, que proporciona más columnas, incluido el ID de usuario y el uso de CPU / memoria.

Debido a que 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 ....

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *