壳牌编程之情况下多分支语句,循环语句(对,等),壳牌函数,层数组

  

案例多分支语句

  

案例语句的结构:

  

针对变量的不同取值,分别执行不同的命令列

  
 <代码>情况变量的值
  模式1)
  命令序列1
  ;;
  模式2)
  命令序列2
  ;;
  …
  *)
  默认命令序列
  esac  
  

壳牌编程之情况下多分支语句,循环语句(对,等),壳牌函数,层数组

  

<强>示例:

  

字符类型识别:

  
      <李>提示用户输入一个字符;李   <李>判断出该字符是字母,数字或者其他字符。   
  

脚本如下:

  
 <代码> # vim test01.sh root@localhost选择
  # !/bin/bash
  阅读- p“请输入一个字符:“键
  情况下美元的关键
  [a - z] | [a - z])
  回应“你输入的是字母”
  ;;
  [0 - 9])
  回应“你输入的是数字”
  ;;
  *)
  回应“你输入的是特殊符号”
  esac  
  
 <代码>执行结果如下:
  
  # chmod + x test01.sh root@localhost选择
  #。/test01.sh root@localhost选择
  请输入一个字符:3
  你输入的是数字
  #。/test01.sh root@localhost选择
  请输入一个字符:d
  你输入的是字母
  #。/test01.sh root@localhost选择
  请输入一个字符:#
  你输入的是特殊符号
  [root@localhost选择]#  
  

循环语句

  

的循环语句:

  

<强>循环结构:读取不同的变量值,用来逐个执行同一组命令。

  
 <代码>变量取的名值列表
  做
  命令序列
   之前完成
  

壳牌编程之情况下多分支语句,循环语句(对,等),壳牌函数,层数组

  

<强>示例1 :

  

批量添加用户:

  
      <李>用户名存放在users.txt文件中,每行一个;李   <李>初始密码均设为123456;李   <李>验证脚本。   
  

<强>具体实验如下:

  
 <代码> [root@localhost选择]#尾5/etc/passwd
  avahi: x: 70:70: avahi mdn/DNS-SD栈:/var//avahi-daemon:运行/sbin/nologin
  后缀:x: 89:89::/var/spool/后缀:/sbin/nologin
  tcpdump: x: 72:72::/:/sbin/nologin
  江:x: 1000:1000:江:/home/江:/bin/bash
  apache: x: 48:48: apache:/usr/share/httpd/sbin/nologin
  # vim users.txt root@localhost选择
  #猫users.txt root@localhost选择
  zhangsan
  lisi
  wangwu
  zhaoliu
  # vim test02.sh root@localhost选择
  #猫test02 root@localhost选择。sh//shell脚本如下
  # !/bin/bash
  TMP=$ (cat/opt/users.txt)
  用户在TMP美元
  做
  useradd $ USER,,回声“123456”| passwd, stdin $ USER,比;/dev/null
  完成
  # chmod + x test02.sh root@localhost选择
  #。/test02.sh root@localhost选择
  [root@localhost选择]#尾5/etc/passwd
  apache: x: 48:48: apache:/usr/share/httpd/sbin/nologin
  zhangsan: x: 1001:1001::/home/zhangsan:/bin/bash
  lisi: x: 1002:1002::/home/lisi:/bin/bash
  wangwu: x: 1003:1003::/home/wangwu:/bin/bash
  zhaoliu: x: 1004:1004::/home/zhaoliu:/bin/bash
  (root@localhost选择)#
  #苏zhangsan root@localhost选择
  [zhangsan@localhost选择]苏lisi美元
  密码:
  美元(lisi@localhost选择) 
  

<强>示例2 :

  

根据IP地址检查主机状态:

  
      <李> IP地址存放在ipadds.txt文件中,每行一个;李   <李>使用平命令检测各主机的连通性。   
  

壳脚本如下:

  
 <代码> # !/bin/bash
  TMP=$ (cat/opt/ipadds.txt)
  用户在TMP美元
  做
  ping - c 3 - 0.2 - w 3美元的用户,在/dev/null
  如果[$ ?情商0]
  然后
  回声“美元用户”
  其他的
  echo " $用户”
  fi
   之前完成
  

而循环语句:

  

<强>循环结构:重复测试某个条件,只要条件成立则反复执行。

  
 <代码>而条件测试操作
  做
  命令序列
   之前完成
  

壳牌编程之情况下多分支语句,循环语句(对,等),壳牌函数,层数组

  

<强>示例1 :

  

批量添加用户: