shell 测试URL 是否正常脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 测试URL 是否正常脚本相关的知识,希望对你有一定的参考价值。

题目:老男孩教育每日一题-2017年5月3日-写一个脚本:创建一个函数,能接受两个参数

题目要求

1)第一个参数为URL,即可下载的文件;第二个参数为目录,即下载后保存的位置;
2)如果用户给的目录不存在,则提示用户是否创建;如果创建就继续执行,否则,函数返回一个51的错误值给调用脚本;
3)如果给的目录存在,则下载文件;下载命令执行结束后测试文件下载成功与否;如果成功,则返回0给调用脚本,否则,返回52给调用脚本;


解答: 此题涉及函数,read读入 传参 if判断 等等,脚本还不完善,仅作为记录

[[email protected] scripts]# cat download.sh 
#!/bin/sh
[ -f /etc/init.d/functions ]&& . /etc/init.d/functions ##加载系统函数库
URL=$1  ##传参
DIR=$2
if [ $# -ne 2 ];then   #判断传参个数
   action "sh $0" /bin/false
  echo "Warning:Lack parameter"    
  echo "USAGE: sh $0 WEB_URL DIR_PATH"
  exit 1
fi
download(){  ##定义函数
if [ ! -d $DIR ];then
  read -p "$DIR not exist need create?(y/n)" char #read读入
  if [ "$char" = "y" ]   ##if判断 字符串比较“”双引号括起来 用=等号比较
     then               #整数比较 不用引号 可以用 -eq
     mkdir $DIR -p
     cd $DIR
     wget  $URL  &>/dev/null
       if [ $? -ne 0 ];then
       return "52"   #return 函数中的返回值,类似于exit
     fi
    else
     return "51"
   fi
fi
}
download  $URL $DIR  ##前面download是函数名;$URL位置是函数的第一个参数,也是脚本的第一个参数=$1
if [ $? -eq 0 ];then
       action "wget $URL" /bin/true
       else
       sleep 1
       action "wget $URL" /bin/false
       sleep 1
       exit 1
     fi


测试结果

[[email protected] scripts]# sh download.sh www.baidu  qqq
qqq not exist need create?(y/n)y
wget www.baidu                                             [FAILED]
[[email protected] scripts]# sh download.sh 
sh download.sh                                             [FAILED]
Warning:Lack parameter
USAGE: sh download.sh WEB_URL DIR_PATH
[[email protected] scripts]# sh download.sh www.baidu.com qiuyuetao
qiuyuetao not exist need create?(y/n)y
wget www.baidu.com                                         [  OK  ]
[[email protected] scripts]# cat qiuyuetao/index.html 
<!DOCTYPE html>
<!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道<


本文出自 “逗哥笔记” 博客,请务必保留此出处http://qiuyt.blog.51cto.com/1229789/1921812

以上是关于shell 测试URL 是否正常脚本的主要内容,如果未能解决你的问题,请参考以下文章

测试网站的url脚本测试网站是否正常

shell脚本wget crul监控某网站是否正常

简单监控网站访问是否正常的shell脚本,邮件报警。网站恢复后继续运行。

shell习题-22

怎样一键检测域名或url是否正常解析并传输

常用python日期日志获取内容循环的代码片段