dmesg
tem a opção -T
de imprimir timestamps legíveis, e as novas versões têm a opção --time-format
, onde o formato de hora pode ser alterado, por exemplo:
--time-format iso
Infelizmente, o iso
formato de hora também não é muito legível. Posso definir meu próprio formato de hora usando a date
sintaxe padrão? ou seja:
date +%F-%T
Você não pode, mas pode analisar
dmesg
-output:Sim, você pode, por exemplo, reformatando a hora com
gawk
(GNUawk
) assim:dmesg
imprime datas iso aqui assim:Tiramos a primeira string de caracteres especiais e, em seguida, usamos a
mktime
função em (g
)awk
para analisar a string em uma data e,strftime
em seguida, formata - use seus parâmetros favoritos.Isso dá algo como
Pequenas notas:
Ignoramos o fuso horário aqui assumindo que isso é óbvio, pois estamos executando o comando localmente.
Observe que o tempo fornecido por
dmesg
pode ser impreciso (na verdade, às vezes muito distante) se você suspender e ativar o computador devido à maneira como os carimbos de data e hora são armazenados, consultedmesg(1)
: