zoukankan      html  css  js  c++  java
  • shell 之 循环执行某操作

    需求: 按月执行201904到202010的py脚本。

    代码如下:

    #!/bin/bash
    i=201904 # 定义开始月份
    while [ $i -le 202010 ] # 当i小于等于202010时执行循环语句
      do
        dateNo1=$(date +"%Y-%m-%d %H:%M:%S") # 获取当前时间(年月日时分秒)
        echo "开始执行($dateNo1): $i" # 打印当前时间(年月日时分秒)
        python tmp_sn_union_mem_20201125.py $i # 执行python脚本,传入月份参数。  此处也可做其他操作
        dateNo2=$(date +"%Y-%m-%d %H:%M:%S") # 获取当前时间(年月日时分秒) 
        echo "结束执行($dateNo2): $i" # 打印当前时间(年月日时分秒)
        i=$[$i + 1] # 当前i值加1
        if [ $i -eq 201913 ] # 判断i值是否等于201913,条件必须写在 [] 里
         then
          i=202001 # 如果i值等于201913,则让i值为202001
        fi # 容易忘记判断结束标记
      done # 容易忘记循环执行结束标记
    注:
    fi 容易忘记判断结束标记 done 容易忘记循环执行结束标记
    i=$[$i + 1] 变量加减运算要写在 $[] 里面。
    if [ $i -eq 201913 ] 条件必须写在 [] 里

    附1: date 参数:

    附2:数值比较

    -eq   相等(equal)
    -ne   不等(not equal)
    -gt    大于(greater than)
    -lt     小于(less than)
    -ge  大于等于 (greater than or equal)
    -le   小于等于 (less than or equal)

  • 相关阅读:
    vmware下玩ubuntu总结
    .Net Json 字典序列化
    Flex Air TitleWindow 拖动范围控制
    TimesTen 问题荟萃
    TimesTen 时间戳(timestamp)用法
    批量数据插入 (.Net, ODBC)
    腾讯 360浏览器 调用js问题
    [转]Android项目源码混淆问题解决方法
    Intent调用大全
    View实现涂鸦、撤销以及重做功能【转】
  • 原文地址:https://www.cnblogs.com/simple-li/p/14040777.html
Copyright © 2011-2022 走看看