从Unix shell脚本获取epoch中的当前日期

Get Current date in epoch from Unix shell script

如何获得时代中的当前日期值,即自1970-1-1以来经过的天数。 我需要unix shell脚本中的解决方案。


Unix Date命令将在纪元时间显示

命令是

1
date +"%s"

http://unixhelp.ed.ac.uk/CGI/man-cgi?date

编辑:有些人观察到你要求几天,所以这是该命令的结果除以86,400


更新:之前发布的答案链接到不再可用的自定义脚本,仅仅因为OP指示date +'%s'不适合他。请参阅UberAlex的回答和干部的答案以获得正确的解决方案。简而言之:

  • 自Unix纪元以来的秒数使用date(1)如下:

    1
    date +'%s'
  • 自Unix纪元以来的天数除以一天中的秒数(请注意双括号!):

    1
    echo $(($(date +%s) / 60 / 60 / 24))

  • 1
    echo $(($(date +%s) / 60 / 60 / 24))


    1
    echo `date +%s`/86400 | bc


    根据您使用的语言,它会变得简单

    1
    CInt(CDate("1970-1-1") - CDate(Today()))

    具有讽刺意味的是,如果你像许多计算机系统一样使用1/1/1900作为"零日",昨天是40,000天。