如何获取epoch中的当前日期值,即1970-1-1以来经过的天数。我需要unix shell脚本中的解决方案。
答案 0 :(得分:135)
Unix Date命令将在纪元时间显示
命令是
date +"%s"
http://unixhelp.ed.ac.uk/CGI/man-cgi?date
编辑:有些人观察到你要求几天,所以这是该命令的结果除以86,400
答案 1 :(得分:42)
更新:之前发布的答案链接到不再可用的自定义脚本,仅仅因为OP表明date +'%s'
对他不起作用。有关正确的解决方案,请参阅UberAlex' answer和cadrian's answer。简而言之:
自Unix纪元以来秒的数量使用date(1)
如下:
date +'%s'
对于 days 的数量,因为Unix纪元将结果除以一天中的秒数(请注意双括号!):
echo $(($(date +%s) / 60 / 60 / 24))
答案 2 :(得分:11)
echo $(($(date +%s) / 60 / 60 / 24))
答案 3 :(得分:2)
echo `date +%s`/86400 | bc
答案 4 :(得分:-3)
根据您使用的语言,它将变得像
一样简单CInt(CDate("1970-1-1") - CDate(Today()))
具有讽刺意味的是,如果你像许多计算机系统一样使用1/1/1900作为“零日”,昨天是40,000天。