#!/usr/bin/env bash#! Encoding UTF-8PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/home/coremail/binexport PATHMY_IP=$1READ_APNIC_IPFILE=”delegated-afrinic-latest delegated-apnic-latest delegated-arin-latest delegated-iana-latest delegated-lacnic-latest delegated-ripencc-latest”for TMP_FILE in ${READ_APNIC_IPFILE}; dowget -N http://ftp.apnic.net/pub/stats/afrinic/${TMP_FILE} -O /tmp/${TMP_FILE}donePROCESS_NUMS=20TMP_FIFO_FOR_PROCESS=”/tmp/$$_06.fifo” && mkfifo “${TMP_FIFO_FOR_PROCESS}” && exec 6<>”${TMP_FIFO_FOR_PROCESS}” && rm “${TMP_FIFO_FOR_PROCESS}”for 便宜美国vps ((i=0;i<${PROCESS_NUMS};i++));do echodone >&6SUBNET_MASK(){TMPpgdb=$1TMP_MASK=$(echo “obase=2;${TMPpgdb}-1″|bc)echo “32-${#TMP_MASK}”|bc}IP_CHANGE_TO_NUM(){IP_ADDR=$1IP_NUM=$(echo ${IP_ADDR}|awk -F. ‘$1<=255&&$2<=255&&$3<=255&&$4<=255;BEGIN{OFMT=”%.f”}{print $1*256*256*256+$2*256*256+$3*256+$4}’|tail -1)echo ${IP_NUM}}MY_IP_NUM=$(IP_CHANGE_TO_NUM ${MY_IP})cd /tmp/cat ${READ_APNIC_IPFILE}|grep ‘apnic|.*|ipv4|’ | cut -f 2,4,5 -d’|’ | sed -e ‘s/|/ /g’| while read area ip cntdoread -u6{TMP_IP_NUM=$(IP_CHANGE_TO_NUM ${ip})TMP_IP_NUM_MAX=$(echo ${TMP_IP_NUM}+${cnt}|bc)if [ ${MY_IP_NUM} -ge ${TMP_IP_NUM} -a ${MY_IP_NUM} -le ${TMP_IP_NUM_MAX} ]; thenecho “${MY_IP} is in \”$area $ip/$(SUBNET_MASK $cnt)\””fiecho >&6} &donewaitexec 6>&- <p甜美的电源载于:https://my.oschina.net/u/217347/blog/737480
90038638