您的位置:首页 > 运维架构 > Shell

Shell脚本遍历一个日期范围实例

2015-03-27 00:00 706 查看
如果跟shell脚本打交道,遍历一个时间范围是很常见的事情,那么今天就跟大家分享一下:

#!/usr/bin/env bash

date1="$1"

date2="$2"
echo "date1: $date1"

echo "date2: $date2"
tempdate=`date -d "-0 day $date1" +%F`

enddate=`date -d "-0 day $date2" +%F`

tempdateSec=`date -d "-0 day $date1" +%s`

enddateSec=`date -d "-0 day $date2" +%s`
echo "####################################"

echo 'tempdate: '$tempdate

echo 'enddate: '$enddate
#for i in `seq 1 130`; do

for i in `seq 1 300`; do

  if [[ $tempdateSec -lt $enddateSec ]]; then

    break

  fi
  echo $tempdate

  python pc_jibzhuanti_url.py $tempdate

  tempdate=`date -d "-$i day $date1" +%F`

  tempdateSec=`date -d "-$i day $date1" +%s`

done

这是一个倒序输出时间的脚本,需要输入两个时间参数,一个是开始时间,一个是结束时间,如输入:

./pc_jibzhuanti_url_run.sh 2014-06-30 2014-06-01


输出的结果是:

date1: 2014-06-30

date2: 2014-06-01

####################################

tempdate: 2014-06-30

enddate: 2014-06-01

2014-06-30

2014-06-29

2014-06-28

2014-06-27

2014-06-26

2014-06-25

2014-06-24

2014-06-23

2014-06-22

2014-06-21

2014-06-20

2014-06-19

2014-06-18

2014-06-17

2014-06-16

2014-06-15

2014-06-14

2014-06-13

2014-06-12

2014-06-11

2014-06-10

2014-06-09

2014-06-08

2014-06-07

2014-06-06

2014-06-05

2014-06-04

2014-06-03

2014-06-02

2014-06-01


ok,搞定!!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: