Quiero mostrar el tiempo transcurrido desde el último inicio del sistema uptime
, pero no quiero que muestre toda esa información. Solo quiero saber cuántas horas pasaron desde el último inicio del sistema (es decir: 18:17:59)
fuente
Quiero mostrar el tiempo transcurrido desde el último inicio del sistema uptime
, pero no quiero que muestre toda esa información. Solo quiero saber cuántas horas pasaron desde el último inicio del sistema (es decir: 18:17:59)
Para obtener el tiempo transcurrido desde el último inicio del sistema en hh:mm:ss
formato, puede usar:
awk '{print int($1/3600)":"int(($1%3600)/60)":"int($1%60)}' /proc/uptime
/proc/uptime
El pseudo-archivo contiene dos números:
Entonces, usando awk
puedes tomar el primer número y convertirlo en hh:mm:ss
formato.
Para obtener el tiempo de actividad en segundos:
awk '{print $1}' /proc/uptime
Para obtener el tiempo de actividad en minutos:
echo $(awk '{print $1}' /proc/uptime) / 60 | bc
Para obtener el tiempo de actividad en horas:
echo $(awk '{print $1}' /proc/uptime) / 3600 | bc
Para obtener x dígitos de precisión, puede agregar scale = x, por ejemplo, para x = 2
echo "scale=2; $(awk '{print $1}' /proc/uptime) / 3600" | bc
Prueba este:
uptime | awk '{ print $3 }'
De hecho, imprime la tercera palabra de la línea producida por uptime
.
uptime
parece no tener opciones, pero tampoco pude encontrar nada en la red.Una modificación trivial para mostrar días:
fuente
Esto formateará su salida como 2 cero relleno:
fuente