[英]Linux date objects behaving differently when hour/minute/second are specified
为什么使用下面的变量$d
和$dt
添加一天的工作方式不同?
Linux 版本:CentOS 6.8
如果$dt
某种隐藏的时区转换而不是$d
? 如果是这样,我该如何压制它?
d="2019-04-01"
dt="2019-04-01 01:00:00"
date --date="$d +1 days" +'%Y-%m-%d'
输出:2019-04-02
date --date="$dt +1 days" +'%Y-%m-%d %H:%M:%S'
输出:2019-04-01 17:00:00
只是为了回答这个问题(我找不到重复的问题),评论中指出+1 days
的+1
被解释为附加到日期的UTC 偏移量。
解决方案是使用时区说明符(例如Z
或UTC
终止日期字符串,以便将其识别为完整日期。
有关日期规范的更多详细信息,请参阅info '(coreutils) date invocation'
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.