按小時和分鐘顯示登入時間

按小時和分鐘顯示登入時間

我正在編寫一個腳本來顯示使用者登入的時間。

who | grep "$userid" | awk '{print $1,$3,$4}' | while read user time; do \echo $(($(($(date +%s) - $(date -d "$time" +%s)))/60)) minutes; done

我怎麼能讓這個顯示小時和分鐘?截至目前,它僅顯示分鐘。例如,我需要它顯示 1 小時和 45 分鐘,其中包含 (s)。

答案1

使用 GNU 日期

who | grep "$userid" | awk '{print $1,$3,$4}' | while read user time; do echo -n "$user  ";eval "echo $(date -ud "@$(($(($(date +%s) - $(date -d "$time" +%s)))))" +'$((%s/3600/24)) days %H hours %M minutes %S seconds')"; done  

禮貌 : 將秒顯示為天/小時/分鐘/秒?

相關內容