shell多线程(3)while循环

 

start="2018-06-17"
end="2018-07-01"
min=`date -d "${start}" +%Y%m%d`
max=`date -d "${end}" +%Y%m%d`


[ -e /tmp/fd3 ] || mkfifo /tmp/fd3
exec 5<>/tmp/fd3
rm -rf /tmp/fd3

for ((i=1;i<=5;i++))
do
    echo >&5
done

while [ $min -le $max ]
do
read -u5
date=${min}
echo "date:" ${date}
{
sql="
select * from table where day = ${date} ;"
echo "${sql}"
hive -e "${sql}" > output_${date}.txt
echo >&5
}&  
min=`date -d "1 day ${date}" +%Y%m%d`

done
wait
exec 5<&-
exec 5>&-

 

转载于:https://www.cnblogs.com/wangbin2188/p/9262136.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值