- 论坛徽章:
- 0
|
#!/bin/sh
FILE=/home/ip_apnic
rm -f $FILE
rm -f CNC
rm -f OTHER
rm -f CHINANET
rm -f CRTC
wget http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest -O $FILE
grep 'apnic|CN|ipv4|' $FILE | cut -f 4,5 -d'|'|sed -e 's/|/ /g' | while read ip cnt
do
mask=$(cat << EOF | bc | tail -1
pow=32;
define log2(x) {
if (x<=1) return (pow);
pow--;
return(log2(x/2));
}
log2($cnt)
EOF)
echo $ip/$mask
echo $ip/$mask>> cn.net
NETNAME=`whois $ip | grep ^netname | sed -e 's/.*: (.*)/1/g' | sed -e 's/-.*//g'`
echo $NETNAME;
case $NETNAME in
CNC)
echo $ip/$mask >> CNC
;;
CNCGROUP)
echo $ip/$mask >> CNC
;;
CHINANET)
echo $ip/$mask >> CHINANET
;;
CHINATELECOM)
echo $ip/$mask >> CHINANET
;;
CRTC)
echo $ip/$mask >> CRTC
;;
*)
echo $ip/$mask >> OTHER
;;
esac
done |
上面代码是从网上找到的获取ip地址段的shell 可是我在运行的时候报告错误,提示是最后一行代码 done的下一行符号错误,可是根本不存在那个行阿,请教高手该如何修改啊? |
|