开发检测URL脚本,检测url脚本


大家好,今天给大家带来的是一些小实例,编写检测网站的脚本,在这里我用了两种思路来实现。

1.第一种实现的效果图如下:

\

2.第二种实现的效果图如下:

第一种实现的脚本如下:

#!/bin/bash
# DATE:2018-2-20
# URL:https://blog.csdn.net/qq_39591494
# Email:www.ywyankai.cn
# information:Website monitoring
# By.yankerp

. /etc/init.d/functions

function Connection(){
        wget --spider -q -o /dev/null --tries=1 -T 5 https://$1
if [ "$?" -eq 0 ]
   then
     action "https://$1 Monitoring success!" /bin/true
   else
     action "https://$1 Failure of monitoring!" /bin/false
fi
}

webaddress="
www.baidu.com
www.jd.com
www.taobao.com
www.123haha.com
www.090909.com
www.627ywndw.com
www.aiqiyi.com
www.nginx.org
www.apache.org
"

function main(){
for U in $webaddress
do
        Connection $U
done
}
main

剖析:

#!/bin/bash       #前面的注释这里不在做介绍了
# DATE:2018-2-20
# URL:https://blog.csdn.net/qq_39591494
# Email:www.ywyankai.cn
# information:Website monitoring
# By.yankerp

. /etc/init.d/functions      #这里是加载函数库,主要是为了后面的一些特效颜色

function Connection(){????????#定义链接函数
        wget --spider -q -o /dev/null --tries=1 -T 5 https://$1 #在这里我们使用了wget 这里参数不在解释,在后面使用了$1特殊的位置变量 来判断用户输入的内容
if [ "$?" -eq 0 ]   #那么 如果以上wget 执行成功了
   then???????#那么
     action "https://$1 Monitoring success!" /bin/true????#使用action来输出https://$1用户输入的网站,  输出成功
   else
     action "https://$1 Failure of monitoring!" /bin/false????#否则输出失败
fi
}

webaddress="????在这里我们定义变量,等于是网站地址池
www.baidu.com????#这里有百度等网址,相当于 webaddress是变量名 那么下面的网址就是变量的值 这些网址会赋值给变量名webaddress
www.jd.com
www.taobao.com
www.123haha.com
www.090909.com
www.627ywndw.com
www.aiqiyi.com
www.nginx.org
www.apache.org
"

function main(){????#定义总函数
for U in $webaddress????#这里使用for循环 U是变量名 那么$webaddress是变量名 它的值就是web网站 也就是说 把$webaddress赋值给U这个变量
do???????#do
        Connection $U????#在这里调用函数Connection 这个函数的指令 大家可以看上面是wget操作 那么$U调用变量 这个变量的值就是网址
done????#最后结束for循环
}
main????#调用main总函数使整个脚本运行

运行如下:

[root@shell-yankerp shell]# sh URLA.sh 
https://www.baidu.com Monitoring success!                   [  确定  ]
https://www.jd.com Monitoring success!                      [  确定  ]
https://www.taobao.com Monitoring success!                  [  确定  ]
https://www.123haha.com Failure of monitoring!              [失败]
https://www.090909.com Failure of monitoring!               [失败]
https://www.627ywndw.com Failure of monitoring!             [失败]
https://www.aiqiyi.com Failure of monitoring!               [失败]
https://www.nginx.org Monitoring success!                   [  确定  ]
https://www.apache.org Monitoring success!                  [  确定  ]
[root@shell-yankerp shell]# 

 

第二种方式脚本内容如下:

#!/bin/bash
. /etc/init.d/functions
RED_COLOR='\E[1;31m'  #红
GREEN_COLOR='\E[1;32m' #绿
YELOW_COLOR='\E[1;33m' #黄
BLUE_COLOR='\E[1;34m'  #蓝
PINK='\E[1;35m'      #粉红
RES='\E[0m'
echo -en "${RED_COLOR}==========欢迎使用检测脚本输入网址即可==========\n${RES}"
function panduan(){
        echo -en "${YELOW_COLOR}请您输入你要检测的网站:${RES}"
                read NUM
        if [ -z $NUM ];then
           action "请您输入一个网址!!!" /bin/false
           exit 1
        fi
}

function URL_check(){
echo -en "${BLUE_COLOR}=================开始检测请稍等============================\n${RES}"
        wget --spider -q -o /dev/null --tries=1 -T 5 https://$NUM
                if [ "$?" -eq 0 ]
                   then
                     action "https://$NUM 检测成功" /bin/true
                   else
                     action "https://$NUM 检测失败" /bin/false
                fi
}

function main(){
while :
do
        panduan
        URL_check
done
}
main

剖析:

#!/bin/bash
. /etc/init.d/functions
RED_COLOR='\E[1;31m'  #红????#定义红色变量 以此类推这里不在介绍
GREEN_COLOR='\E[1;32m' #绿
YELOW_COLOR='\E[1;33m' #黄
BLUE_COLOR='\E[1;34m'  #蓝
PINK='\E[1;35m'      #粉红
RES='\E[0m'
echo -en "${RED_COLOR}==========欢迎使用检测脚本输入网址即可==========\n${RES}"????#使用红色字段输出欢迎使用此脚本
function panduan(){????#定义判断函数
        echo -en "${YELOW_COLOR}请您输入你要检测的网站:${RES}"????#使用黄色字段输入请您输入检测网站
                read NUM????#等待用户输入 并赋值给变量NUM
        if [ -z $NUM ];then????#判断$NUM 长度是否为0 
           action "请您输入一个网址!!!" /bin/false
           exit 1
        fi
}

function URL_check(){????#定义检测脚本
echo -en "${BLUE_COLOR}=================开始检测请稍等============================\n${RES}"????#使用蓝色输出开始检测
        wget --spider -q -o /dev/null --tries=1 -T 5 https://$NUM????#去链接下载
                if [ "$?" -eq 0 ]????#如果链接下载成功了
                   then????#那么
                     action "https://$NUM 检测成功" /bin/true???#输出检测成功,以此类推
                   else
                     action "https://$NUM 检测失败" /bin/false
                fi
}

function main(){????#定义总函数main
while :????#使用while循环 这里条件一直为真
do????????????
        panduan????#循环panduan函数
        URL_check????#以及链接函数
done????#done
}
main????#最后调用main总函数使整个脚本运行

相关内容