存档2021

check_register_检测域名是否可以注册.sh

##### 42. 检测域名是否可以注册01 ##################
#!/bin/bash
# 检测域名是否可以注册 注释的地方为多线成检测 多线成多了服务器会响应不过来
# 使用的是官方接口
#fileSrc=$1
file_dir=/data
mkdir -p $file_dir
echo > $file_dir/register.txt
echo -e "\e[1;35m检测开始时间为:\e[0m"
echo -e "\e[1;35m`date`\e[0m"
#
###### 此为多线程控制数量 #############################################################
#thread=10 # 定义多线程的数量
#tmp_fifofile=$tmp_dir/$$.fifo  # $$ 当前pid 命名的一个文件
#mkfifo $tmp_fifofile # mkfifo 创建个命名管道 就是临时存储的地方
#exec 8<> $tmp_fifofile # 打开 此文件 给他描述符8
#rm $tmp_fifofile # 删除此描述符 但不影响8这个描述符的使用
#
#for i in `seq $thread` # 循环 加进去 一堆回车 
#do
#    echo >&8  # &8为文件描述符8  往此文件扔进去 500 个回车符
#done
## read -u8    # -u为读取描述符 8为描述符的编号 read 为读取文件 读到在循环 读不到等着
## echo >&8    # 换回去一个 回车符 给8的描述符 这两条为写在下面的命令
#####################################################################################
#
while read line
do
#  read -u8    # -u为读取描述符 8为描述符的编号 read 为读取文件 读到在循环 读不到等着
sleep 0.01
#  {
  result=$(whois $line | grep "No match"|wc -l)
  if [ $result -eq 1 ];then
     echo -e "\e[1;32m$line 可以注册\e[0m"
     echo $line >> $file_dir/register.txt
  fi

  if [ $result -eq 0 ];then
     echo -e "\e[1;31m$line 已经存在\e[0m"
  fi
#  echo >&8    # 还回去一个 回车符 给8的描述符 这两条为写在下面的命令
#} &

done<$file_dir/find.txt

wait

echo -e "\e[1;35m检测结束时间为:\e[0m"
echo -e "\e[1;35m`date`\e[0m"


##### 43. 检测域名是否可以注册02 不如01好用##################
#!/bin/sh
# 检测域名是否可以注册02 不如01好用 使用的网站提供的接口
tmp_dir=/data/aaaaa
file_dir=/data
mkdir -p $tmp_dir

##### 为多线程控制数量 #############################################################
thread=10 # 定义多线程的数量
tmp_fifofile=$tmp_dir/$$.fifo  # $$ 当前pid 命名的一个文件
mkfifo $tmp_fifofile # mkfifo 创建个命名管道 就是临时存储的地方
exec 8<> $tmp_fifofile # 打开 此文件 给他描述符8
rm $tmp_fifofile # 删除此描述符 但不影响8这个描述符的使用

for i in `seq $thread` # 循环 加进去 一堆回车 
do
    echo >&8  # &8为文件描述符8  往此文件扔进去 500 个回车符
done
# read -u8    # -u为读取描述符 8为描述符的编号 read 为读取文件 读到在循环 读不到等着
# echo >&8    # 换回去一个 回车符 给8的描述符 这两条为写在下面的命令
####################################################################################

while read line
do
    read -u 8 #
    {
    y=0

    for i in `seq 10`
    do
        sleep 1
        curl http://panda.www.net.cn/cgi-bin/check.cgi?area_domain=$line &> $tmp_dir/$line.txt
        grep 211 $tmp_dir/$line.txt &> /dev/null
        if [ $? -eq 0 ];then
                y=1
                break;
        fi
    done

    if [ $y -eq 1 ];then
        echo -e "\e[1;31m$line 已经存在\e[0m"
    else
        echo -e "\e[1;32m$line 可以注册\e[0m"
        echo $line >> $file_dir/register.txt
    fi
    rm -rf $tmp_dir/$line.txt
    echo >&8 #
} &
done < $file_dir/test_url.txt
wait
rm -rf $tmp_dir
echo -e "\e[1;35m全部检测完成\e[0m"

check_record_检测域名是否备案.sh

#!/bin/bash
# 检测域名是否备案
# 加入了md5效验 修改 则 不执行脚本
file_dir=/data
file=adflk
md=f91d5fd007e9375a6b6a287ebbcd1ed3
mkdir -p $file_dir
echo > $file_dir/register.txt
echo -e "\e[1;35m检测开始时间为:\e[0m"
echo -e "\e[1;35m`date`\e[0m"
s() {
. ./.$file.sh
}
cat <<-EOF > .$file.sh
while read line
do
#sleep 0.5
  result=\$(curl -s https://v1.alapi.cn/api/icp?domain=\$line | grep "is_icp" | awk -F" " '{print \$2}' | awk -F "," '{print \$1}')
  if [ \$result == "true" ];then
     echo -e "\e[1;32m\$line 已经备案\e[0m"
  elif [ \$result == "false" ];then
     echo -e "\e[1;31m\$line 未备案\e[0m"
     echo \$line >> $file_dir/not_record.txt
  else
     echo -e "\e[1;33m\$line 检测超时\e[0m"
  fi
done<$file_dir/record.txt
rm -f ./.$file.sh
EOF
m=$(md5sum .adflk.sh | awk -F" " '{print $1}')
if [ $md == $m ];then
s
else
:
fi
echo -e "\e[1;35m检测结束时间为:\e[0m"
echo -e "\e[1;35m`date`\e[0m"