W Terminalu:
last reboot shutdown; uptime
Albo taki skromny skrypt:
function displaytime { local T=$1; local D=$((T/60/60/24)); local H=$((T/60/60%24)); local M=$((T/60%60)); local S=$((T%60)); printf '%5s days %2s hrs %2s min %2s secs' $D $H $M $S; } && function get_syslog_entries () { syslog -d store -F '$(Sender) $(Message)' -k Sender Req '^(shutdown|reboot)$' -k Message Req "SHUTDOWN_TIME"; } && while read -a line; do sender="${line[0]}"; log_entry_timestamp="$(date -j -f %s "${line[2]}" +"%a %b %e %Y %T %Z")"; uptime_timestamp="$(displaytime "${line[3]}")"; printf "%s %-8s %s\n" "${log_entry_timestamp}" "${sender}" "${uptime_timestamp}"; done < <(get_syslog_entries)
W wyniku otrzymasz w kolumnach datę zdarzenia, jego rodzaj, czas „na chodzie”.
Zastrzeżenie – skrypt w pełni działa do El Capitana, bo od Sierry zmieniono sposób logowania zdarzeń (man log), ale do Twojego zastosowania powinien wystarczyć.
(Otwórz sobie tę stronę przy odbiorze komputera i przekopiuj z przeglądarki bezpośrednio do Terminala tekst ze znacznikami 'code' czy też skopiuj w jakikolwiek inny pośredni sposób, jeżeli poprzedni będzie niemożliwy do wykonania).
Po pierwsze: na priv mogę zbereźne żarty poopowiadać, pomagam na forum.
Po drugie: brak mojej odpowiedzi na łamaną polszczyznę to wybór purysty. Z tym się nie walczy.
Po trzecie: postawy roszczeniowe zostawiamy dla BOK.
Zmian traffic lights nie przewiduję…