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

(编辑:jimmy 日期: 2024/12/26 浏览:2)

如果跟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,搞定!!!!

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。