为什么这样:
date +%d%m%Y -d "01052018 + 1 day"
错误w /
date: invalid date `02062018 + 1 day'
在CEST上的CentOS 7.3上?我尝试了一些变化
date +%d%m%Y -d "$date 12:00 + 1 day"
date +%d%m%Y -ud "$date UTC + 1 day"
无济于事。我错过了什么?
答案 0 :(得分:4)
GNU日期不支持类型的日期格式 ddmmyyyy ,您可以在Pure numbers in date strings中看到,您需要更改 yyyymmdd 类型以使其正常工作
date -d "20180501 + 1 day"
或使用UTC作为
date -ud "20180501 UTC + 1 day"
如果您的原始字符串来自变量,并且您需要解决方法使其与上述格式兼容,请使用参数扩展
rawdate="02062018"
compatDate="${rawdate:4}${rawdate:2:2}${rawdate:0:2}"
并在compatDate
命令
date
date -d "${compatDate} + 1 day"