当前位置: 技术问答>linux和unix
UNIX 如何实现日期加减
来源: 互联网 发布时间:2016-09-15
本文导语: i=0 while ((i> trdt 怎么实现日期加减呢 | 如果是linux 请使用以下代码 i=0 while((i >tempdate_file done | 把date -d "20100713 -99 day"改成: date -d "20100713 99 days ago" | dateadd() { perl -e '...
i=0
while
((i> trdt
怎么实现日期加减呢
|
如果是linux 请使用以下代码
i=0
while((i >tempdate_file
done
|
把date -d "20100713 -99 day"改成:
date -d "20100713 99 days ago"
date -d "20100713 99 days ago"
|
dateadd()
{
perl -e '
use Time::Local;
use Time::localtime;
$time = timelocal(0, 0, 0, substr("'$1'", 6, 2), substr("'$1'", 4, 2) - 1, substr("'$1'", 0, 4) - 1900);
$time += 60 * 60 * 24 * "'$2'";
$tm = localtime($time);
printf("%04d%02d%02dn", $tm->year+1900, $tm->mon+1, $tm->mday);
'
}
i=0
base="20100713"
while [ $i -lt 20 ]; do
i=`expr $i + 1`
echo `dateadd $base $i`
done
输出为
20100714
20100715
20100716
20100717
20100718
20100719
20100720
20100721
20100722
20100723
20100724
20100725
20100726
20100727
20100728
20100729
20100730
20100731
20100801
20100802