我正在寻找该月的最后一天。 日期为DDMMYYYY格式。
#!/bin/bash
start_date=01092018
end_date=$(date +%m%Y -d "$start_date +1 month")
echo $end_date
预期结果:30092018
但是它给出了以下错误:
Invalid character in date/time specification.
Usage :date [-u] [+Field Descriptors]
AIX日期不支持-d
。因此,您不能使用像date -d
这样的构造。作为参考,您可以检查AIX date man page
您可以在perl中尝试一些东西:
perl -MPOSIX -le '@x=localtime; if($x[4]!=0) {$x[4]++} else {$x[4]=11;$x[5]++};print strftime ("%Y-%m-%d",@x)'