GNU/Linux >> Tutoriales Linux >  >> Linux

Linux – ¿Se cambió la salida de Ps Lstart?

Inicié un programa y escribí el resultado de ps -p PID -o lstart= a un archivo, así:

$ long_running_command &
[1] 4562
$ ps -p $! -o lstart= > start_time
$ cat start_time
Wed Apr  6 06:16:31 2016

Pero cuando vuelvo a ejecutar ps luego obtengo un resultado ligeramente diferente:

$ ps -p 4562 -o lstart=
Wed Apr  6 06:16:53 2016

Tenía la impresión de que lstart= imprimiría la hora de inicio de un proceso dado. ¿Por qué obtengo una hora de inicio diferente cuando vuelvo a llamar a ps? ?

Respuesta aceptada:

Sospeché (pero no pude replicar) que el problema estaba relacionado de alguna manera con un exec llamada o algo similar que estaba reemplazando el proceso en ejecución, manteniendo el mismo PID pero restableciendo la hora de inicio. Resulta que la explicación es mucho más simple (y lamentablemente no incluí suficientes detalles en la pregunta original).

Como se detalla en este seguimiento, una actualización de NTP estaba cambiando el reloj de mi sistema entre ps llamadas Aparentemente lstart respeta las actualizaciones del reloj (lo cual tiene sentido, pero aun así me sorprendió un poco), lo que significa que no puedes confiar en la salida de lstart para permanecer consistente durante la vida útil de un solo proceso.


Linux
  1. Cómo asignar la salida de un comando de Linux a una variable

  2. Cómo guardar la salida del comando en un archivo en Linux

  3. Cómo redirigir la salida a un archivo y salida estándar en Linux

  4. Redirección de entrada/salida en Linux/Unix

  5. Salida lsblk de Linux

Comando iftop en Linux

Herramienta htop en Linux

Comando lsblk en Linux

¿Qué es '/dev/null 2&1' en Linux?

Explicación de la redirección de entrada y salida en Linux

Ejemplos de comandos echo de Linux