最佳答案
我有一个运行在Linux上的shell脚本,并使用此调用以YYYY-MM-DD格式获取昨天的日期:
date -d "1 day ago" '+%Y-%m-%d'
它在大多数时间都工作,但是当脚本昨天早上在2013-03-11 0:35 CDT运行时,它返回"2013-03-09"而不是"2013-03-10"。
想必日光节约时间(从昨天开始)是罪魁祸首。我猜"1 day ago"的实现方式是减去24小时,而在2013-03-11 0:35 CDT之前的24小时是2013-03-09 23:35 CST,这导致了"2013-03-09"的结果。
那么,在Linux上用bash获取昨天日期的dst安全的好方法是什么呢?