linux命令行获取时间,Linux命令获取以毫秒为单位的时间

其他的答案很可能在大多数情况下足够了,但我认为我会当我在busybox系统上遇到问题时,请添加我的2美分。

相关系统不支持%N格式选项,也没有python或perl解释器。

经过大量挠头我们(感谢戴夫!)想出了这个:

adjtimex | awk '/(time.tv_sec|time.tv_usec):/ { printf("%06d", $2) }'

它提取秒和毫秒从adjtimex输出(通常用来设置系统时钟选项),并打印他们没有新的线条(所以他们粘在一起)。请注意,微秒字段必须预填充零,但这不会影响长于6位数的秒字段。从这应该是微不足道的微秒转换为毫秒。

如果你需要一个尾随新行(也许是因为它看起来更好)然后尝试

adjtimex | awk '/(time.tv_sec|time.tv_usec):/ { printf("%06d", $2) }' && printf "\n"

另外请注意,这需要adjtimex和awk可用。如果没有,那么与busybox的,你可以在本地使用

ln -s /bin/busybox ./adjtimex

ln -s /bin/busybox ./awk

指向它们,然后调用上面

./adjtimex | ./awk '/(time.tv_sec|time.tv_usec):/ { printf("%06d", $2) }'

或者当然,你可以把它们放在PATH

编辑:

上面的工作在我的busybox设备上。在Ubuntu上,我尝试了同样的事情,并意识到adjtimex有不同的版本。在Ubuntu这个工作到输出的时间以秒为小数,以微秒(包括尾随新行)

sudo apt-get install adjtimex

adjtimex -p | awk '/raw time:/ { print $6 }'

我不会做这在Ubuntu虽然。我会用date +%s%N

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值