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

改动之前的代码

1.推断 $1 是否为 hello,假设是的话。就显示 "Hello, how are you ?";

2.假设没有加不论什么參数。就提示使用者必需要使用的參数下达法;

3.而假设增加的參数不是 hello ,就提醒使用者仅能使用 hello 为參数。

有兴趣要侦測的是比較常见的 port 21, 22, 25及 80 时,那我怎样透过 netstat 去侦測我的主机是否有开启这四个基本的网络服务端口呢?由於每一个服务的keyword都是接在冒号『 : 』后面。 所以能够藉由撷取类似『 :80 』来侦測的。

利用 case ..... esac 推断

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

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

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

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

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

时间: 2025-01-07 00:32:38

Shell Scripts - 条件语句,case语句,function功能的相关文章

Linux 条件判断 - if语句 - case语句 - for语句

01.按照文件类型进行判断   => 常用-d.-e.-f 两种格式: test -e /root/install.log  =>   常用 [ -e /root/install.log ]  =>   两边空格必须有 例如:[ -d /root ] && echo "yes" || echo "no":判断该文件是否存在,并且是否为目录文件,是yes,不是no. 02.按照文件权限进行判断   => 03.两个文件之间比较

shell编程-多分支case语句

case语句格式如下 #!/bin/bash read -p "please input code:" code case $code in "A") echo "beijing" ;; "B") echo "shanghai" ;; *) echo "unknown" ;; esac "*"代表其他情况,注意每种情况后都需要加";;"

第十三章、学习 Shell Scripts 条件判断式

利用 if .... then 单层.简单条件判断式 if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的命令工作内容: fi <==将 if 反过来写,就成为 fi !结束 if 之意! && 代表 AND : || 代表 or : [ "$yn" == "Y" -o "$yn" == "y" ]上式可替换为 [ "$yn" == "Y" ] ||

理论+实操:shell之case语句for/while/until循环语句、函数、数组-满满的干货

前言: 单引号表示纯符号 用双引号表字符串 case多分支语句 循环语句 for循环语句 while循环语句 until循环语句 shell函数 shell数组 一 : case语句的结构 1.1 case结构 多分支表现形式:if语句,case语句 case 语句可以使用正则表达式,正则表达式后面会去阐述 针对变量的不同取值,分别执行不同的命令程序 case 中::表示一句话的结束 如果匹配某一个固定值,大多数用caes,其适用于某一个固定值 如果匹配某一个区间范围,大多数用if else 语

条件控制:IF &amp; CASE语句

IF语句主要有以下三种基本形式: 一. IF-THEN语句 IF CONDITION THEN           STATEMENT 1;           ...           STATEMENT N;       END IF; 二. IF-THEN-ELSE语句 IF CONDITION THEN           STATEMENT 1;       ELSE            STATEMENT 2;       END IF; 三. ELSLF语句 IF CONDIT

Shell编程——case语句与循环语句(3)

case多分支语句 case语句的结构 针对变量的不同取值,分别执行不同的命令序列 实例1 击键类型识别 提示用户输入一个字符 判断出该字符是字母,数字或者其他字符 #!/bin/bash read -p "请输入一个字符:" key case $key in [a-z] | [A-Z]) echo "你输入的是字母" ;; [0-9]) echo "你输入的是数字" ;; *) echo "你输入的是特殊字符" esac 实

shell脚本的if判断语句

if语句 1.按照文件类型进行判断-d 文件)判断该文件是否存在,并且是否为字符设备文件(是字符设备为真)-e 文件)判断该文件是否存在(存在为真)[-e /root]echo $?输出为0 #判断为真,即为0常用的格式有:[ -e /root ] && echo yes || echo no 一.单分支if条件语句格式有如下两种: if [ 条件判断式 ];then程序fi或者if [ 条件判断式 ]then程序fi 但分支条件语句需要注意几个点·if语句使用fi结尾,和一般语言使用大括

bash脚本编程选择执行之case语句

选择执行的三种方式: (1) &&, || (2) if语句 (3) case语句 case语句的语法格式: case  $VARAIBLE  in PAT1) 分支1 ;; PAT2) 分支2 ;; ... *) 分支n ;; esac case支持glob风格的通配符: *:任意长度的任意字符: ?:任意单个字符: []:范围内任意单个字符: a|b:a或b: 示例:写一个服务框架脚本: $lockfile,  值/var/lock/subsys/SCRIPT_NAME (1) 此脚本

浅谈case语句与select语句

case语句与select语句 case语句: 多分支if语句: if CONDITION1;then 分支1 elif CONDITION2;then 分支2 ... else CONDITION;then 分支n fi 例如下面这段代码,我们可以使用while语句内嵌套if语句实现, #!/bin/bash cat << EOF cpu) display cpu information mem) display memory information disk) display disks