man shutdown (8) говорит:
Первым аргументом может быть последовательность времени (обычно «now»).
Время последовательности может иметь формат «чч: мм» для часа/минут, указывающий время завершения работы в, указанное в формате 24 часов. В качестве альтернативы он может иметь синтаксис «+ m», относящийся к указанному количеству минут через m. «now» является псевдонимом для «+ 0», т.е. для запуска немедленного отключения. Если аргумент времени не указан, подразумевается «+ 1».
Попробуйте:
# shutdown +5
# systemctl status systemd-shutdownd.service
Вы должны увидеть что-то подобное:
● systemd-shutdownd.service - Delayed Shutdown Service
Loaded: loaded (/lib/systemd/system/systemd-shutdownd.service; static; vendor preset: enabled)
Active: active (running) since Tue 2015-09-15 09:13:11 UTC; 12s ago
Docs: man:systemd-shutdownd.service(8)
Main PID: 965 (systemd-shutdow)
Status: "Shutting down at Tue 2015-09-15 09:18:11 UTC (poweroff)..."
CGroup: /system.slice/systemd-shutdownd.service
└─965 /lib/systemd/systemd-shutdownd
Состояние
Отключение на Tue 2015-09-15 09:18:11 UTC (выключение питания)...
-121--30259-
Обычно команда find может быть связана с любой командой с помощью аргумента exec
.
В вашем случае вы можете сделать так:
find . -type d | cut -c 3-12 | while read line
do
echo -n "${line} "
date -d $line
done
-121--29640-
У вас уже есть:
find ./ -type d | cut -c 3-12
, что, предположительно, дает вам временные метки в эпохальном формате. Теперь добавьте цикл while:
find ./ -type d | cut -c 3-12 | while read datestamp
do
printf %s "$datestamp"
date -d "@$datestamp"
done
Обратите внимание, что в некоторых оболочках этот синтаксис получает цикл while во вложенной оболочке, что означает, что если вы попытаетесь задать переменную, она не будет видна после выхода из цикла. Чтобы исправить это, нужно слегка повернуть вещи на голову:
while read datestamp
do
printf %s "$datestamp"
date -d "@$datestamp"
done < <(find ./ -type d | cut -c 3-12)
, что помещает находку
в субоболочку, и сохраняет петлю while в основной оболочке. Этот синтаксис (AT & T ksh
, zsh
и bash
) необходим только в том случае, если вы хотите повторно использовать результат из цикла.
Si no tiene problemas para obtener esa información del sistema operativo, con tuptime puede ver un informe completo del tiempo total del sistema Linux, incluidas las caídas del sistema.
Por ejemplo, como salida predeterminada y reanudar:
# tuptime
System startups: 8 since 08:32:29 AM 11/24/2016
System shutdowns: 3 ok - 4 bad
System uptime: 99.99 % - 1 year, 195 days, 5 hours, 47 minutes and 14 seconds
System downtime: 0.01 % - 1 hour, 6 minutes and 34 seconds
System life: 1 year, 195 days, 6 hours, 53 minutes and 48 seconds
Largest uptime: 240 days, 7 hours, 38 minutes and 10 seconds from 08:41:51 AM 02/07/2017
Shortest uptime: 18 hours, 15 minutes and 14 seconds from 02:26:05 PM 02/06/2017
Average uptime: 70 days, 0 hours, 43 minutes and 24 seconds
Largest downtime: 45 minutes and 15 seconds from 10:00:01 AM 03/14/2018
Shortest downtime: 5 seconds from 02:26:00 PM 02/06/2017
Average downtime: 9 minutes and 31 seconds
Current uptime: 85 days, 4 hours, 41 minutes and 1 second since 10:45:16 AM 03/14/2018
Alternativamente, es posible obtener una lista con todos los eventos históricos con el argumento de la lista, en la que se indica cómo fue el evento de apagado, mal (un bloqueo )o bien (después del proceso de apagado):
]# tuptime -l
Startup: 1 at 08:32:29 AM 11/24/2016
Uptime: 46 days, 16 hours, 52 minutes and 32 seconds
Shutdown: BAD at 01:25:01 AM 01/10/2017
Downtime: 5 minutes and 10 seconds
Startup: 2 at 01:30:11 AM 01/10/2017
Uptime: 27 days, 12 hours, 55 minutes and 49 seconds
Shutdown: OK at 02:26:00 PM 02/06/2017
Downtime: 5 seconds
Startup: 3 at 02:26:05 PM 02/06/2017
Uptime: 18 hours, 15 minutes and 14 seconds
Shutdown: OK at 08:41:19 AM 02/07/2017
Downtime: 32 seconds
Startup: 4 at 08:41:51 AM 02/07/2017
Uptime: 240 days, 7 hours, 38 minutes and 10 seconds
Shutdown: BAD at 05:20:01 PM 10/05/2017
Downtime: 3 minutes and 17 seconds
Startup: 5 at 05:23:18 PM 10/05/2017
Uptime: 7 days, 14 hours, 56 minutes and 43 seconds
Shutdown: BAD at 08:20:01 AM 10/13/2017
Downtime: 11 minutes and 35 seconds
Startup: 6 at 08:31:36 AM 10/13/2017
Uptime: 25 days, 1 hour, 7 minutes and 4 seconds
Shutdown: OK at 08:38:40 AM 11/07/2017
Downtime: 39 seconds
Startup: 7 at 08:39:19 AM 11/07/2017
Uptime: 127 days, 1 hour, 20 minutes and 42 seconds
Shutdown: BAD at 10:00:01 AM 03/14/2018
Downtime: 45 minutes and 15 seconds
Startup: 8 at 10:45:16 AM 03/14/2018
Uptime: 85 days, 4 hours, 42 minutes and 9 seconds
Tenga en cuenta que last reboot
y journalctl --list-boots
obtienen la información de los registros, y estos registros tienen una vida máxima. En cambio, tuptime
almacena la información en un archivo db específico dedicado a ella.
Para la instalación, suponiendo que use Linux, el paquete está disponible en Debian y sus derivados:
# apt-get install tuptime
Si no, puede obtener el script de instalación "tuptime -install.sh" del repositorio :https://github.com/rfrail3/tuptime/