有人如何以毫秒为单位打印整个时间,例如 12:07:59:393(HH:MM:SS:milliseconds)。我发现很多帖子都说如何与 HHMMSS 一起打印毫秒,但我想以毫秒为单位打印实时时钟。我正在使用Linux。
答案1
这将告诉你自 Unix 纪元开始以来已经过去了多少毫秒:
date +%s%3N
您必须减少今天 00:00 之前经过的秒数*1000。或者您可以根据以下公式将所有内容转换为毫秒:
date +%H%M%S%3N
喜欢 :
h=$(date +%H)
m=$(date +%M)
s=$(date +%S)
ms=$(date +%3N)
echo $((10#$h*3600000 + 10#$m*60000 + 10#$s*1000 + 10#$ms))
执行此操作平均需要 4 毫秒,您可能不希望减少该时间。
编辑:如果变量之一中有前导零,则脚本将失败。我在变量名称前面添加了 10#,以去掉前导零,这样我们就得到了 8 而不是 08。