如何在SHELL获取当天时间的月份和上个月的月份还有下个月的月份

如题所述

上个月比较好写,减去当前日期,再减1天
# date -d "-1 days" -d "-`date +%d` days" +%m
09
------------------------------------------------------------
下个月就不好写咯
date里的1 month有问题
比如今天是10月31日
# date -d "1 month" +%m
12
变成12月了

# date +%m
10
获取当前月份

那么下个月只好写代码了:
now_month=`date +%m`
if [ $now_month -ne 12 ];then
echo nextmonth is `expr $now_month + 1`

else
echo nextmonth is 01

fi
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-15
linux中:
当月
date +%Y%m
上个月
date -d "(date +%Y%m)01 last month" +%Y%m
下个月
date -d "(date +%Y%m)01 next month" +%Y%m