【问题标题】:Loop through hours from a specific time to another time [duplicate]从特定时间到另一个时间循环几个小时[重复]
【发布时间】:2016-12-02 00:16:51
【问题描述】:
我想编写一个 bash/shell 脚本以每隔 3 小时循环一次 2016-07-27_00:00:00 到 2016-07-29_00:00:00。我的问题是时间。我是新用户,我想循环几个小时。
这样它可以如下所示:
2016-07-27_00:00:00
2016-07-27_03:00:00
2016-07-27_06:00:00
...and so on.
谁能帮帮我?
【问题讨论】:
标签:
bash
shell
loops
time
while-loop
【解决方案1】:
for i in 27 28 29; do
a=0;
while [ $a -lt 24 ]; do
printf "2016-07-%s_%02d:00:00\n" $i $a;
let a+=3;
done;
done
类似的东西。对于三个日期,创建一个字符串。日为 $i(在 printf %s 中),小时为 $a。在 printf 中,我们使用 %02d 来确保早班时间以前导 0 为前缀。