Shell脚本编程之判断语句

一、单分支if语句

Linux
shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头、注释、变量和
环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提。

介绍:
1 开头
程序必须以下面的行开始(必须方在文件的第一行):
#!/bin/sh  有人说是bash
符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
当编写脚本完成时,如果要执行该脚本,还必须使其可执行。
要使编写脚本可执行:
编译 chmod +x filename 这样才能用./filename 来运行
2 注释
在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。
如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。
3 变量
在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:
#!/bin/sh
#对变量赋值:
a=”hello world”
# 现在打印变量a的内容:
echo “A is:”
echo $a
有时候变量名很容易与其他文字混淆,比如:
Shell脚本编程之判断语句。num=2
echo “this is the $numnd”
这并不会打印出”this is the 2nd”,而仅仅打印”this is the
“,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:
num=2
echo “this is the ${num}nd”
这将打印: this is the 2nd

格式:if 判断条件;then

  1. Linux 脚本编写基础
    ◆1.1 语法基本介绍
    1.1.1 开头
    程序必须以下面的行开始必须方在文件的第一行):
    #!/bin/sh
    符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
    当编辑好脚本时,如果要执行该脚本,还必须使其可执行。
    要使脚本可执行:
    编译 chmod +x filename 这样才能用./filename 来运行
    1.1.2 注释
    在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。
    如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。
    1.1.3 变量
    在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:
    #!/bin/sh
    #对变量赋值:
    a=”hello world”
    # 现在打印变量a的内容:
    echo “A is:”
    echo $a
    有时候变量名很容易与其他文字混淆,比如:
    num=2
    echo “this is the $numnd”
    这并不会打印出”this is the 2nd”,而仅仅打印”this is the
    “,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:
    num=2
    echo “this is the ${num}nd”
    这将打印: this is the 2nd
    1.1.4 环境变量
    由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。
statement1
statement2
...
fi

这一讲就介绍到这里,下面我们会接触到具体的Linux
shell脚本基础的实质部分。

图片 1

  1. 详细解析Linux服务器攻击的分级防御
  2. Linux系统安全提高之安全配置
  3. Linux系统安全提高之系统优化
  4. 全面总结Linux快捷键的使用
  5. 全面剖析Linux系统管理命令w

二、双分支的if语句

shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头、注释、变量和
环境变量,向大家做一个基础的介绍,虽然不涉及…

格式:if 判断条件; then

statement1
statement2
...
else
statementN
...
fi

使用一个以前用过的脚本来说明这个结构。

图片 2

三、多分支if语句

格式:if 判断条件1;then

statement1
...
elif 判断条件2; then
statement2
...
elif 判断条件3; then
statement3
...
else
statement4
...
fi

图片 3

四、case语句

格式:case 变量 in

PATTERN1)
statement
...
;;
PATTERN2)
statement
... 
;;
*)
statement
...
;;
esac

图片 4

因为判断结构语句比较简单,没有做过多的说明,只要记住各语句的结构用法即可。

补充shell基本语法

1.1、shell文件开头

shell文件必须以下面的行开始(必须方在文件的第一行):
#!/bin/sh

符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。

当编辑好脚本时,如果要执行该脚本,还必须使其可执行。

要使脚本可执行:

运行chmod +x filename 这样才能用./filename 来运行

1.2 注释

在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。

如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。

1.3 变量

在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明,直接赋值就可以,应用变量的话,用$+变量名的形式。

要赋值给一个变量,您可以这样写:

a="hello world" 

现在打印变量a的内容:

echo "A is:" 
echo $a

有时候变量名很容易与其他文字混淆,比如:

num=2 
echo "this is the $numnd" 

这并不会打印出”this is the 2nd”,而仅仅打印”this is the
“,因为shell会去搜索变量numnd的值,但是这个变量时没有值的。可以使用花括号来告诉shell我们要打印的是num变量:

num=2 
echo "this is the ${num}nd" 

这将打印: this is the 2nd

1.4 环境变量

由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,因为通常情况下仅仅在登录
脚本中使用环境变量。