如何在bash shell中将日期时间字符串转换为整数

tua*_*ong 1 shell

给定像'2013-04-06'之类的字符串,我想将它转换为整数,就像我们在Java中所做的那样.我不知道如何在bash shell中执行此操作.有人知道怎么做吗?感谢任何人救命.

Bra*_*nam 7

date --date="Wed Mar 13 00:18:06 2013" '+%s'
date --date="2013-04-06" '+%s'
Run Code Online (Sandbox Code Playgroud)

仅适用于gnu日期.


pha*_*ers 5

要获得秒和纳秒,您可以使用 date 命令。

date -d "2013-04-06" "+%s.%N"

1365224400.000000000
Run Code Online (Sandbox Code Playgroud)

您可以调整格式并截断输出,例如,省略小数并仅使用纳秒的前三个字符来提供毫秒。

date -d "2013-04-06" "+%s%N" | cut -b1-13

1365224400000
Run Code Online (Sandbox Code Playgroud)