zoukankan      html  css  js  c++  java
  • shell循环(两个日期比较,改变某个特定日期来改变当前比较值)

    需求:从当前时间前6个月开始执行某个语句,直到执行到当前日期的前一天。 

     shell脚本如下:

    #!/bin/bash

    yesterday=`date -d -1day +%Y%m%d`
    sixmonthsago=` date -d -6month +%Y%m%d` 
    echo $sixmonthsago
    while [[ $sixmonthsago < $yesterday  ]]
    do
             curDate=`date -d "+0 day $sixmonthsago" +%Y-%m-%d`         
              echo curDate  
            sixmonthsago=`date -d "+1 day $sixmonthsago" +%Y%m%d`
            echo $sixmonthsago
    done

    注意: sixmonthsago=`date -d "+1 day $sixmonthsago" +%Y%m%d`这个写法,在If条件语句下此写法不好用。

    测试结果:

    [root@master shell]# sh t.sh 
    20180123
    20180124
    20180125
    20180126
    20180127
    20180128
    20180129
    20180130
    20180131
    20180201
    20180202
    20180203

    。。。

    20180719
    20180720
    20180721
    20180722
    [root@master shell]# 
  • 相关阅读:
    【逆序对】N*M Puzzle / Simple Puzzle
    【逆序对】Ultra
    bzoj 1814 Fornula 1
    hdu 1693 插头dp入门
    bzoj 2154
    没有上司的舞会
    【HNOI】合唱队
    luogu 自适应Simpson2
    luogu 自适应Simpson1
    【bzoj 1502】月下柠檬树
  • 原文地址:https://www.cnblogs.com/abcdwxc/p/9356148.html
Copyright © 2011-2022 走看看