模拟代码如下:
方式一:
#!/bin/bash
etldate=(20190404)
etlhour=(13)
for date in ${etldate[@]}
do
for hour in ${etlhour[@]}
do
echo $date$hour
./ad_nobid_data_b.sh $date$hour
done
done
方式二:
etldate=(20191026 20191027 20191028 20191029)
etlhour=(00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23)
for date in ${etldate[@]}
do
for hour in ${etlhour[@]}
do
echo $date$hour
main $date$hour
done
done
function main()
{
mkdir -p $outputDir
local bizEndDate=$1
if [ -z $bizEndDate ]; then
bizEndDate=`date +%Y%m%d%H -d "-1 hour"`
fi
standardDate="${bizEndDate:0:4}-${bizEndDate:4:2}-${bizEndDate:6:2} ${bizEndDate:8:2}:00:00"
bizStartDate=`date +%Y%m%d%H -d "-1 hour ${standardDate}"`
bizMidDate=`date +%Y%m%d%H -d "-2 hour ${standardDate}"`
############ VALIDATE FLUME TRANSFER COMPLETED ###########
count=0
for pid in $(jobs -p)
do
wait $pid
code=$?
if [ $code -ne 0 ];then
count=$(($count+1))
fi
done
if [ $count -ne 0 ]; then
alert "Bid ETL Failed | Failed Tasks number: ${count} | Job Date:[${bizEndDate}]"
exit 255
fi
}