有没有办法在不使用该选项的情况下将输入日期增加一个月date -d
?我的机器没有这个功能。
样本:
$yearmonth=201912
预期输出:
201912
202001
答案1
POSIXly(假设$yearmonth
没有前导零):
case $((yearmonth += 1)) in
(*13) yearmonth=$((yearmonth + 100 - 12))
esac
使用 ksh/bash/zsh,您可以将其缩短为:
((++yearmonth % 100 <= 12)) || ((yearmonth += 100 - 12))
答案2
或者
(( yearmonth += ((yearmonth % 100) == 12)?(100 - 11):1 ))