shell中date函数,我知道显示当前月是echo "`date \"+%Y-%m\"`",那么要是我想显示上个月呢?
答案:2 悬赏:20 手机版
解决时间 2021-02-15 20:50
- 提问者网友:不要迷恋哥
- 2021-02-15 13:17
shell中date函数,我知道显示当前月是echo "`date \"+%Y-%m\"`",那么要是我想显示上个月呢?
最佳答案
- 五星知识达人网友:迟山
- 2021-02-15 13:47
如果是在Linux上,hefan77的答案就可以了。
如果是在其它的Unix上(e.g. AIX,HPUX,SunOS etc)
date command 没有 -d 的 option 可用时,可以用下面script:
#!/bin/ksh
let YEAR=$(date "+%Y")
let MONTH=$(date "+%m")
if [ $MONTH -eq 1 ]
then
let YEAR=YEAR-1
LASTYM=$(printf "%d-%.2d\n" $YEAR 12)
else
let MONTH=MONTH-1
LASTYM=$(printf "%d-%.2d\n" $YEAR $MONTH)
fi
echo $LASTYM
如果是在其它的Unix上(e.g. AIX,HPUX,SunOS etc)
date command 没有 -d 的 option 可用时,可以用下面script:
#!/bin/ksh
let YEAR=$(date "+%Y")
let MONTH=$(date "+%m")
if [ $MONTH -eq 1 ]
then
let YEAR=YEAR-1
LASTYM=$(printf "%d-%.2d\n" $YEAR 12)
else
let MONTH=MONTH-1
LASTYM=$(printf "%d-%.2d\n" $YEAR $MONTH)
fi
echo $LASTYM
全部回答
- 1楼网友:神的生死簿
- 2021-02-15 14:51
echo "`date -d \"-1 month\" \"+%Y-%m\"`"
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯