SHELL指令碼每月最後一天判斷
#!/bin/bash
####函式定義
function monBigorSmall()
{
big_month=(1 3 5 7 8 10 12)
small_month=(4 6 9 11)
year=$(echo $1|cut -c 1-4)
month=$(echo $1|cut -c 5-6)
day=$(echo $1|cut -c 7-8)
for bvar in ${big_month[@]}
do
if [ $bvar -eq $month ]
then
echo 31
fi
done
for svar in ${small_month[@]}
do
if [ $svar -eq $month ]
then
echo 30
fi
done
iyear=$((10#${year}))
imonth=$((10#${month}))
if [ $imonth -eq 2 ]
then
if [ $(($iyear % 4)) -eq 0 -a $(($iyear % 100)) -ne 0 ] || [ $(($iyear % 400)) -eq 0 ]
then
echo 29
else
echo 28
fi
fi
}
#########
echo "#############################################################################################"
for ((ii=1;ii<=$last_day;ii++))
do
colname=$(printf "aircraft15_${yyyymm}%02d" $ii)
echo $colname
mongodump -h 10.13.40.71 --port 10001 -uchengqian -pXXXXXX-d flight -c $colname -o /home/lilongqian/temp
mongo localhost:10001/admin -uroot -pXXXXXX' --eval "sh.shardCollection(\"flight.$colname\",{\"_id\":\"hashed\"})"
mongorestore -h 127.0.0.1 --port 10001 -uchengqian -pXXXXXX-d flight -c $colname /home/lilongqian/temp/flight/$colname.bson
rm -rfv /home/lilongqian/temp/flight/$colname*
done
done
【完】
####函式定義
function monBigorSmall()
{
big_month=(1 3 5 7 8 10 12)
small_month=(4 6 9 11)
year=$(echo $1|cut -c 1-4)
month=$(echo $1|cut -c 5-6)
day=$(echo $1|cut -c 7-8)
for bvar in ${big_month[@]}
do
if [ $bvar -eq $month ]
then
echo 31
fi
done
for svar in ${small_month[@]}
do
if [ $svar -eq $month ]
then
echo 30
fi
done
iyear=$((10#${year}))
imonth=$((10#${month}))
if [ $imonth -eq 2 ]
then
if [ $(($iyear % 4)) -eq 0 -a $(($iyear % 100)) -ne 0 ] || [ $(($iyear % 400)) -eq 0 ]
then
echo 29
else
echo 28
fi
fi
}
#########
echo "#############################################################################################"
for ((ii=1;ii<=$last_day;ii++))
do
colname=$(printf "aircraft15_${yyyymm}%02d" $ii)
echo $colname
mongodump -h 10.13.40.71 --port 10001 -uchengqian -pXXXXXX-d flight -c $colname -o /home/lilongqian/temp
mongo localhost:10001/admin -uroot -pXXXXXX' --eval "sh.shardCollection(\"flight.$colname\",{\"_id\":\"hashed\"})"
mongorestore -h 127.0.0.1 --port 10001 -uchengqian -pXXXXXX-d flight -c $colname /home/lilongqian/temp/flight/$colname.bson
rm -rfv /home/lilongqian/temp/flight/$colname*
done
done
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9606353/viewspace-2152737/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- shell指令碼中的運算子和條件判斷指令碼
- Linux shell指令碼判斷伺服器網路是否可以上網Linux指令碼伺服器
- 【SHELL】Shell中的條件判斷
- 在Linux中,如何使用shell指令碼判斷某個服務是否正在執行?Linux指令碼
- sh指令碼判斷路徑是否存在指令碼
- shell指令碼指令碼
- Python 判斷for迴圈最後一次的方法Python
- shell指令碼案例指令碼
- 常用shell指令碼指令碼
- Linux Shell指令碼Linux指令碼
- shell指令碼(6)-shell陣列指令碼陣列
- 最安全的型別判斷型別
- CPU對指令長度的判斷
- 2020的最後一天
- shell 指令碼加密 | shc指令碼加密
- 執行shell指令碼指令碼
- Shell 指令碼語句指令碼
- 初識shell指令碼指令碼
- 【指令碼】shell語法指令碼
- shell 指令碼寫法:指令碼
- 如何加密shell指令碼加密指令碼
- shell指令碼總結指令碼
- iOS逆向 Shell指令碼+指令碼重簽名iOS指令碼
- shell指令碼-免互動指令碼
- 【shell】磁碟監控指令碼指令碼
- linux常用的shell指令碼Linux指令碼
- Shell指令碼最佳實踐指令碼
- shell指令碼——基本運算子指令碼
- Shell指令碼應用(三)指令碼
- 前端釋出shell指令碼前端指令碼
- shell指令碼之迴圈指令碼
- 批次解壓shell指令碼指令碼
- 通用程式部署shell指令碼指令碼
- shell指令碼報錯:[: missing `]‘指令碼
- shell判斷系統路徑中是否存在空格
- 【ARCH】Oracle 判斷asm磁碟組大小,超過閾值清理指令碼OracleASM指令碼
- 程式碼上線的shell指令碼指令碼
- 2018最後一天深夜總結