[英]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.