Registros : 320
Escenario : en el sistema operativo CentOS 7.9, el comando ps es una herramienta para ver la información del proceso. Ver el estado del proceso, el uso de la memoria del proceso, el uso de la CPU del proceso, el PID del proceso, etc.
Versión:
Sistema operativo: CentOS 7.9
1. Introducción al comando ps
comando ps, abreviatura de estado del proceso. Una herramienta para ver la información del proceso. Puede ver qué procesos se inician, el estado de ejecución de los procesos y los recursos ocupados por los procesos. La recopilación de esta información ayuda a monitorear y controlar el proceso. Por ejemplo, al escribir un script de automatización, el siguiente paso se determina en función de la información del proceso.
El comando ps se utiliza para ver la herramienta de información del proceso en el momento de la ejecución del proceso. Ver el estado del proceso, el uso de la memoria del proceso, el uso de la CPU del proceso, el PID del proceso, etc.
El comando superior es una herramienta para ver la información dinámica en tiempo real del proceso. Ver el estado del proceso, el uso de la memoria del proceso, el uso de la CPU del proceso, el PID del proceso, etc.
Proceso zombi, un proceso utiliza una bifurcación para crear un proceso secundario. Si el proceso secundario sale y el proceso principal no llama a wait o waitpid para obtener la información de estado del proceso secundario, el descriptor del proceso secundario aún se guarda en el sistema. Tal proceso se llama proceso zombie.
2. ps comandos comunes
(1) comando de ayuda ps
Comando: ps --help a
Función: Ver todos los comandos y opciones admitidos por ps En el trabajo real, ver este manual debería ser imprescindible.
(2) Ver procesos abiertos en la sesión actual
Comando: pd
Función: Ver los procesos abiertos por la sesión actual, que en realidad son el proceso ps y el proceso bash. Dado que ps es un script de shell que usa bash, también hay un proceso bash.
(3) Ver todos los procesos
Comando: ps -e
Comando: ps -A
Función: -e, -A, ver todos los procesos. Imprimir campos: información PID, TTY, TIME, CMD. Generalmente usa -e.
(4) Ver todos los procesos y formatos completos, incluidas las líneas de comando
Comando: ps -ef
Función: -f formato completo, incluida la línea de comando. Imprimir campos: UID, PID, PPID, C, STIME, TTY, TIME, CMD.
(5) Ver todos los procesos y buscar contenido específico
Comando: ps -ef | grep java
Función: en el contenido enumerado por ps -ef, use el comando grep para buscar procesos que contengan la palabra clave java, que generalmente se usa en combinación. Tenga en cuenta que después de usar la búsqueda, el nombre del campo no se muestra.
(6) Ver todos los procesos para mostrar información completa
Comando: ps -eF
Función: -F, mostrar información completa, imprimir campos: UID, PID, PPID, C, SZ, RSS, PSR, STIME, TTY, TIME, CMD. Si desea ver el uso de memoria y CPU del proceso, puede usar este comando.
(7) Ver todos los procesos para generar información en la dimensión del usuario
Comando: ps aux
Función: a, imprime todos los procesos iniciados por la terminal tty. x, imprime procesos que no tienen un terminal de control tty. u, salida en un formato orientado al usuario. Imprimir campos: USUARIO, PID, %CPU, %MEM, VSZ, RSS, TTY, STAT, STATT, HORA, COMANDO. Necesita ver el estado de la CPU, la memoria y el proceso del proceso del usuario, puede usar este método
(8) Ver todos los procesos para generar información en la dimensión del usuario para especificar la búsqueda
Comando: ps aux | grep java
Función: vea todos los procesos y la información de salida en la dimensión del usuario para buscar palabras clave específicas.
3. análisis de campo de comando ps
Después de ejecutar el comando ps, la primera línea de la información impresa es el nombre del campo, es decir, el significado de cada columna.
3.1 Campos comunes
UID: El número de identificación del usuario del proceso.
USUARIO: El usuario que inició el proceso.
PID: El ID único del proceso.
PPID: El número de ID del proceso padre del proceso.
C: Utilización del procesador de la CPU del proceso.
TTY: El nombre de la terminal que inició el proceso. Indica en qué terminal se está ejecutando el proceso. Los procesos que no se inician desde un determinado terminal o los procesos que no están relacionados con el terminal se muestran como ?. Para ver el nombre del terminal, puede usar: ll /dev/.
TIEMPO: El tiempo acumulado que el proceso utiliza la CPU.
CMD/COMANDO: El comando ejecutado por el proceso.
STIME/STATT: La hora de inicio del proceso.
%CPU: el porcentaje de CPU ocupado por el proceso
%MEM: el porcentaje de memoria ocupado por el proceso (calculado usando memoria física).
VSZ: el tamaño de la memoria virtual ocupada por el proceso (unidad: KB)
RSS: el tamaño de memoria real ocupado por el proceso (unidad: KB)
PSR: el número de serie del núcleo de la CPU en el que está programado el proceso actual.
SZ: El tamaño de la imagen central del proceso en páginas físicas.
STAT: El estado actual del proceso.
3.2 Descripción del campo STAT
STAT: El estado actual del proceso. Cada letra en el campo STAT representa un significado.
R: estado en ejecución, en ejecución o ejecutable.
S: sueño interrumpible, que puede interrumpir el sueño (esperar a que se complete el evento), el proceso que está durmiendo.
D: sueño ininterrumpido, un proceso de sueño ininterrumpido.
T: proceso detenido, parado o rastreado.
Z: zombi, proceso zombi.
s: líder de sesión, estado de capa de sesión.
N: Proceso de baja prioridad.
<: Proceso de alta prioridad.
+: proceso en primer plano.
l: proceso de subprocesos múltiples. (letra l).
3.ps y varios otros comandos
Ver proceso: ps -ef
Ver información de la CPU: cat /proc/cpuinfo
Ver información interna: libre -h
Ver información del sistema de archivos: df -h
Ver información de directorio y espacio de archivos: du -h
Ver información de montaje del disco: lsblk
4. Lista de comandos de ayuda
Comando: ps --help a
Ver todos los comandos y opciones admitidos por ps En el trabajo real, la visualización de este manual debería ser imprescindible.
Usage:
ps [options]
Basic options:
-A, -e all processes
-a all with tty, except session leaders
a all with tty, including other users
-d all except session leaders
-N, --deselect negate selection
r only running processes
T all processes on this terminal
x processes without controlling ttys
Selection by list:
-C <command> command name
-G, --Group <GID> real group id or name
-g, --group <group> session or effective group name
-p, p, --pid <PID> process id
--ppid <PID> parent process id
-q, q, --quick-pid <PID>
process id (quick mode)
-s, --sid <session> session id
-t, t, --tty <tty> terminal
-u, U, --user <UID> effective user id or name
-U, --User <UID> real user id or name
The selection options take as their argument either:
a comma-separated list e.g. '-u root,nobody' or
a blank-separated list e.g. '-p 123 4567'
Output formats:
-F extra full
-f full-format, including command lines
f, --forest ascii art process tree
-H show process hierarchy
-j jobs format
j BSD job control format
-l long format
l BSD long format
-M, Z add security data (for SELinux)
-O <format> preloaded with default columns
O <format> as -O, with BSD personality
-o, o, --format <format>
user-defined format
s signal format
u user-oriented format
v virtual memory format
X register format
-y do not show flags, show rss vs. addr (used with -l)
--context display security context (for SELinux)
--headers repeat header lines, one per page
--no-headers do not print header at all
--cols, --columns, --width <num>
set screen width
--rows, --lines <num>
set screen height
Show threads:
H as if they were processes
-L possibly with LWP and NLWP columns
-m, m after processes
-T possibly with SPID column
Miscellaneous options:
-c show scheduling class with -l option
c show true command name
e show the environment after command
k, --sort specify sort order as: [+|-]key[,[+|-]key[,...]]
L show format specifiers
n display numeric uid and wchan
S, --cumulative include some dead child process data
-y do not show flags, show rss (only with -l)
-V, V, --version display version information and exit
-w, w unlimited output width
--help <simple|list|output|threads|misc|all>
display help and exit
Arriba, gracias.
18 de noviembre de 2022