Shell Scripts - 条件语句,case语句,function功能

修改之前的代码

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

1.判断 $1 是否为 hello,如果是的话,就显示 "Hello, how are you ?";

    2.如果没有加任何参数,就提示使用者必须要使用的参数下达法;

    3.而如果加入的参数不是 hello ,就提醒使用者仅能使用 hello 为参数。

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

有兴趣要侦测的是比较常见的 port 21, 22, 25及 80 时,那我如何透过 netstat 去侦测我的主机是否有开启这四个主要的网络服务端口呢?由於每个服务的关键字都是接在冒号『 : 』后面, 所以可以藉由撷取类似『 :80 』来侦测的!

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

利用 case ..... esac 判断

case  $变量名称 in   <==关键字为 case ,还有变量前有钱字号
  "第一个变量内容")   <==每个变量内容建议用双引号括起来,关键字则为小括号 )
	程序段
	;;            <==每个类别结尾使用两个连续的分号来处理!
  "第二个变量内容")
	程序段
	;;
  *)                  <==最后一个变量内容都会用 * 来代表所有其他值
	不包含第一个变量内容与第二个变量内容的其他程序运行段
	exit 1
	;;
esac                  <==最终的 case 结尾!『反过来写』思考一下!

要注意的是,这个语法以 case (实际案例之意) 为开头,结尾自然就是将 case 的英文反过来写!就成为 esac 罗! 不会很难背啦!另外,每一个变量内容的程序段最后都需要两个分号 (;;) 来代表该程序段落的结束,这挺重要的喔! 至於为何需要有 * 这个变量内容在最后呢?这是因为,如果使用者不是输入变量内容一或二时, 我们可以告知使用者相关的资讯啊!

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

一般来说,使用『 case $变量 in 』这个语法中,当中的那个『 $变量 』大致有两种取得的方式:



    直接下达式:例如上面提到的,利用『 script.sh variable 』 的方式来直接给予 $1 这个变量的内容,这也是在 /etc/init.d 目录下大多数程序的设计方式。



    互动式:透过 read 这个命令来让使用者输入变量的内容。

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

Shell Scripts - 条件语句,case语句,function功能

上一篇:sQL语言分类 DML、DDL、DCL区别


下一篇:spring 加载配置文件的相关配置总结