从今天起1年

时间:2017-10-25 09:01:35

标签: bash shell

Year=`date '+%Y'`
RTRN1=$?

这会返回日志中的当前日期,但是我想在之前的一年返回,所以2017年我希望2016年返回2017年。

任何帮助表示赞赏!感谢

3 个答案:

答案 0 :(得分:1)

对于GNU date实用程序:使用-d--date)选项调整日期:

Year=$(date +%Y -d'1 year ago')

echo $Year
2016

答案 1 :(得分:1)

正如我们bash一样,可以使用let

let YEAR=`date +%Y`-1
echo $YEAR

答案 2 :(得分:1)

您始终可以使用[ { title: 'event1', start: '2010-01-01', color: 'yellow', }, { title: 'event1', start: '2010-01-01', color: 'red', } ] 捕获年份。您可以使用POSIX算术运算符减去date +'%Y',例如

1

您还可以使用POSIX兼容的$ echo $(($(date +%Y) - 1)) 2016 数学运算符,例如

expr

注意:$ expr $(date +%Y) - 1 2016 ,您必须在数学运算符和值之间留下expr

带有space的GNU日期运算符-d将按照注释和其他答案中的指定工作,并与另一个答案中指定的'1 year ago'一起工作({{1}不允许使用空格}})。

在所有选择中,如果我没有GNU let dt=$(date +%Y)-1; echo $dt,我会选择带有let命令替换减去date的POSIX算术运算符$((...))

相关问题