shell脚本的互相调用实现较复杂的功能

#test1.sh
#
!/bin/bash mon=$1 daym=$2 dayt=$((daym+2)) cxsql="SELECT * from table1 where time >='2023-$1-0$daym' and time <= '2023-$1-$3';"

mysql -h ip -P3306 -uuser -p'pass' --database data -e "$cxsql" > 2023${mon}0${dayt}.csv
#test2.sh
#
!/bin/bash mon=$1 daym=$2 dayt=$((daym+2)) cxsql="SELECT * from table1 where time >='2023-$1-$daym' and time <= '2023-$1-$3';" mysql -h ip -P3306 -uuser -p'pass' --database data -e "$cxsql" -e "$cxsql" > ZTSMS_ZT_2023${mon}${dayt}.csv
#!/bin/bash
mon=$1
for ((num =1;num <=28;num++))
do
    if [[ $num -le 9 ]];then    #小于9的日期前会加上0
       sub=$((num+1))           #查询的数据时间是T日0点到T+1日的0点
       if [[ $sub -ge 10 ]];then   #当T+1大于等于10的时候,前不需要加0
          sh ./test1.sh $mon $num $sub   #参数是月,T,T+1
       else
          sh ./test1.sh $mon $num 0$sub  #小于10要加
       fi
     else
       sub=$((num+1))              #当T大于9时,不用再加0,执行test2.sh
       sh ./test2.sh $mon $num $sub
     fi
done

这是一个简单的脚本互相之间调用实现自动查询T-2的数据保存在T日的文件内,同时查询范围是T到T+1,完全用一个脚本可能需要写几个函数,这种通过脚本互相调用实现功能可以提供思路,实现一些较复杂的功能

 

posted @ 2023-11-01 10:36  菜菜陈  阅读(45)  评论(0)    收藏  举报