如何使用“正常运行时间”显示自上次系统启动以来经过的时间?
我想显示自上次系统启动以来使用uptime
时间所经过的uptime
,但我不希望它显示所有这些信息。 我只是想知道自上次系统启动以来经过了多少小时(即:18:17:59)
要以hh:mm:ss
格式获取自上次系统引导以来经过的时间,您可以使用:
awk '{print int($1/3600)":"int(($1%3600)/60)":"int($1%60)}' /proc/uptime
/proc/uptime
伪文件包含两个数字:
- 第一个数字是系统在几秒钟内启动的时间。
- 第二个数字是机器在几秒钟内闲置的时间。
因此,使用awk
您可以获取第一个数字并将其转换为hh:mm:ss
格式。
要在几秒钟内获得正常运行时间
awk '{print $1}' /proc/uptime
要在几分钟内获得正常运行时间
echo $(awk '{print $1}' /proc/uptime) / 60 | bc
要在几小时内获得正常运行时间
echo $(awk '{print $1}' /proc/uptime) / 3600 | bc
要获得精度的x位数,您可以添加scale = x,例如x = 2
echo "scale=2; $(awk '{print $1}' /proc/uptime) / 3600" | bc
试试这个:
uptime | awk '{ print $3 }'
实际上,它打印uptime
产生的第三个单词。
显示日期的微不足道的修改:
awk '{print int($1/86400)"days "int($1%86400/3600)":"int(($1%3600)/60)":"int($1%60)}' /proc/uptime