Unix循环日期

时间:2017-05-22 14:49:13

标签: unix

我需要为不同的日期多次运行unix脚本。脚本应首先执行2017-01-01,然后执行2017-02-01等。我们每月检查数据。请有人帮我这个。感谢。

1 个答案:

答案 0 :(得分:0)

通常,您可以使用for循环进行迭代。您可以使用{01..12}seq -w 1 12生成一系列月份,如下所示:

for date in 2017-{01..12}-01; do
    echo Processing data for $date
    # Use $date in some way
done

for month in $(seq -w 1 12); do
    date=2017-$month-01
    echo Processing data for $date
    # use $date in some way
done

第一个将在Bash,zsh和许多其他shell中工作,但我认为不能保证对它们中的任何一个起作用;第二个应该适用于任何sh - 就像shell一样。