在日期范围linux中打印日期

前端之家收集整理的这篇文章主要介绍了在日期范围linux中打印日期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是 linux的新手.如何在给定的日期范围内打印和存储日期.

例如,我有startdate = 2013-03-01和enddate = 2013-03-25;我想打印该范围内的所有日期.

提前致谢

解决方法

只要日期为YYYY-MM-DD格式,您可以按字典顺序对它们进行比较,让日期执行日历算法而不先转换为秒:
startdate=2013-03-15
enddate=2013-04-14

curr="$startdate"
while true; do
    echo "$curr"
    [ "$curr" \< "$enddate" ] || break
    curr=$( date +%Y-%m-%d --date "$curr +1 day" )
done

[…],你需要逃避<避免与输入重定向操作符混淆. 如果它大于结束日期,则确实打印了开始日期.

猜你在找的Linux相关文章