shell脚本之八:函数知识与实践

Posted cuiyongchao007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本之八:函数知识与实践相关的知识,希望对你有一定的参考价值。

八、函数知识与实践

(一)shell函数语法

1、函数的表示方式

第一种语法 第二种语法 第三种语法
function 函数名(){ } function 函数名 {} 函数名() { }

2、实例:函数的写法

[root@centos6-kvm3 scripts]# cat 08-01.sh
#!/bin/bash
function oldboy(){
echo "i am $1 teacher"

}
function oldgirl {
echo "i am $1 teacher"
}

test() {
echo "this is $1"
}

oldboy $1
oldgirl $2
test $3
[root@centos6-kvm3 scripts]# bash 08-01.sh oldboy oldgirl test
i am oldboy teacher
i am oldgirl teacher
this is test

3、实例:检测web网站是否正常

wget 命令:

--spider 模拟爬虫(不下载)

-q 安静访问

-o /dev/null 不输出

-T --timeout 超时时间

-t --tries 重试次数

 wget --spider -T 5 -q -o /dev/null -t 2 www.baidu.com
 echo $?

curl命令:

-I 查看响应头

-s 安静的

-o /dev/null 不输出

-w%{http_code} 返回状态码

[root@centos6-kvm3 scripts]# curl -I -s -o /dev/null -w "%{http_code}
" www.baidu.com
200

检测网站案例展示:

[root@centos6-kvm3 scripts]# cat 08-02.sh
#!/bin/bash
function usage(){
echo "usage:$0 url"
exit 1
}
function url_check {
wget -q -o /dev/null -T 5 -t 3 $1
if [ $? -eq 0 ]
then
   echo "$1 is ok!"
else
   echo "$1 is fail!"
fi
}
main(){
if [ $# -ne 1 ]
then
   usage
else
   url_check $1
fi
}

main $*

以上是关于shell脚本之八:函数知识与实践的主要内容,如果未能解决你的问题,请参考以下文章

《懒人Shell脚本》之八——定期备份Mysql数据库表的实现

201555332盛照宗—网络对抗实验1—逆向与bof基础

逆向及Bof基础实践

再读:Linux系统命令及Shell脚本实践指南

shell脚本学习总结

工作中编写shell脚本的实践