Sem um qualificador, significa MM: SS - isto é, minutos e segundos inteiros. Como um bônus adicional, há um quarto formato que você não tem nessa saída - um número de dias (NNdays) de inatividade.
Estou tentando descobrir um processo que monitore as sessões dos usuários em um servidor remoto e avise-os quando estiverem ociosos por muito tempo, o que com o comando w
do Linux é apropriadamente apropriado.
O problema é - w
usa três formatos diferentes para especificar o tempo ocioso da sessão, e não consigo entendê-los corretamente. Uma saída de w
pode ser assim:
11:40:57 up 400 days, 10:46, 13 users, load average: 5.07, 5.10, 4.83
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
john pts/1 XX.XX.XX.XX Wed13 22:29m 0.13s 0.04s ssh master-db
june pts/2 XX.XX.XX.XX Wed13 46.00s 0.67s 0.13s -bash
jenn pts/4 XX.XX.XX.XX 11:13 27:47 4.16s 0.11s -bash
Como você pode ver, o IDLE tem formatos diferentes para cada um dos usuários:
Da página do manual
The standard format is DDdays, HH:MMm, MM:SS or SS.CC if the times are greater than 2 days, 1hour, or 1 minute respectively.
, então sua saída é MM: SS (> 1m e < 1 hora).
Não é bem a resposta à sua pergunta, mas uma abordagem mais fácil para verificar o tempo ocioso das sessões de login seria ver / dev / pts. Os horários de modificação dos arquivos refletem a última vez que a sessão de login recebeu entrada.
Você deve poder fazer operações estatísticas (por exemplo, stat --format="% n% X" *), e manter tudo em segundos. Deveria tornar qualquer cálculo de tempo mais fácil.
A resposta é 27 minutos e 47 segundos