If-then结构控制的分类:

(1)单分支if结构,此类分支结构,当条件满足时就会执行then后面的语句,不满足就直接退出判断语句

if [条件];then

语句...

fi

程序演练:

Shell实例1:

[root@ChangerLee 顺序结构]# cat id_ifthen_dan.sh

#!/bin/bash

#if_then单分支控制结构演练

id $1

if [ $? -eq 0 ]

then

echo "$1 user exists!"

fi

[root@ChangerLee 顺序结构]# sh id_ifthen_dan.sh apachedid: apached: no such user

[root@ChangerLee 顺序结构]# sh id_ifthen_dan.sh apache

uid=48(apache) gid=48(apache) groups=48(apache)

apache user exists!

(2)双分支结构,当条件满足时就会运行then后面的语句,当条件不满足就会运行else后面的语句

if [条件];then

语句...

else

语句

fi

程序演练:判断第一个系统参数所所赋的用户名是否存在,存在则输出用户UID,否则创建该用户,并且输出这个用户的UID

Shell实例2:

[root@ChangerLee 顺序结构]# cat id_ifthen_double.sh

#!/bin/bash

#if-then双分支演练结构

#id useradd

id=$(id -u $1)

if [ $? -eq 0 ]

then

echo "$1 user already exist,uid is $id"

else

useradd $1

id=$(id -u $1)

echo "$1 is created,and uid is $id"

fi

[root@ChangerLee 顺序结构]# sh id_ifthen_double.sh apache

apache user already exist,uid is 48

(3)嵌套if结构,当条件满足条件1,则执行then后面的语句,当条件再满足条件2,则执行then后面的语句,不满足条件二则执行else语句;当条件不满足条件1,则执行外层else后面的语句

if [条件1];then

if [条件2];then

语句

else

语句

fi

else

语句

fi

Shell实例3:

[root@ChangerLee 顺序结构]# cat id_qianru.sh

#!/bin/bash

#if-then嵌入式程序演练

if [ $# -eq 1 ]

then

id=$(id -u $1)

if [ $? -eq 0 ]

then

echo "$1 user is exist,and id is $id"

else

useradd $1

id=$(id -u $1)

echo "$1 user is already created,and id is $id"

fi

else

echo "error: need one username!!!"

fi

[root@ChangerLee 顺序结构]# sh id_qianru.sh apache

apache user is exist,and id is 48

[root@ChangerLee 顺序结构]# sh id_qianru.sh asd

id: asd: no such user

asd user is already created,and id is 1003

[root@ChangerLee 顺序结构]# sh id_qianru.sh asd apache

error: need one username!!!

If-then结构控制介绍相关推荐

  1. openresty开发系列2--nginx的简单安装,正向、反向代理及常用命令和信号控制介绍...

    openresty开发系列2--nginx的简单安装,正向.反向代理及常用命令和信号控制介绍 一.nginx的安装下载及编译安装 1.Nginx下载:nginx-1.13.0.tar.gz,下载到:/ ...

  2. 通俗理解滑模变结构控制(1)

    这里写自定义目录标题 1.什么是滑模变结构控制 2.滑模变结构的一些基本知识 3.滑模控制器设计 4.滑模控制器例子 1.什么是滑模变结构控制 在开始介绍滑模变结构控制之前,最好先学习一些线性控制的基 ...

  3. 长安大学计算机科学与技术(交通信息工程)课程专业课,长安大学硕士专业交通信息工程及控制介绍...

    长安大学硕士专业交通信息工程及控制介绍 正文 长安大学硕士专业交通信息工程及控制介绍: 一.专业简介 交通信息工程及控制专业为我校国家级重点学科,是我院工程硕士的招生专业,具有博士.硕士学位授予权,并 ...

  4. 终端滑模matlab程序,滑模变结构控制 MATLAB程序

    [实例简介] 滑模控制 MATLAB [实例截图] [核心代码] fac23b3f-e420-4e36-9a5a-2e225aeaf4da └── 滑模变结构控制MATLAB仿真(第3版):基本理论与 ...

  5. Zookeeper C API 基本常量和结构体介绍

    Zookeeper 监视(Watches) 简介 Zookeeper C API 的声明和描述在 include/zookeeper.h 中可以找到,另外大部分的 Zookeeper C API 常量 ...

  6. phpcmsV9 默认主题模板(templates文件目录结构)介绍

    phpcmsV9 默认主题模板(templates文件目录结构)介绍 介绍如下: 介绍如下: 这篇文章则详细的介绍一下系统自带默认模板的文件目录结构.主题模板位于"-\phpcms\temp ...

  7. Ubuntu目录结构简单介绍笔记

    一.Ubuntu目录结构简单介绍 Ubuntu目录结构简单介绍  /根目录   1.boot/启动文件.所有与启动有关的文件都保存在这里 ·grub/ Grub引导器相关的文件 2.dev/设备文件 ...

  8. 下面是html5中新增的结构元素的是,HTML5的新的结构元素介绍

    HTML5的新的结构元素介绍 一.HTML5与HTML4的区别 1. 取消了一些过时的HTML4的标签 其中包括纯粹显示效果的标记,如和 ,它们已经被 CSS完全取代. 其他取消的属性:acronym ...

  9. HTML5的新的结构元素介绍

    HTML5的新的结构元素介绍 一.HTML5与HTML4的区别 1. 取消了一些过时的HTML4的标签 其中包括纯粹显示效果的标记,如<font>和<center>,它们已经被 ...

最新文章

  1. Spring Cloud【Finchley】实战-03订单微服务与商品微服务之间的调用
  2. Android WebView 使用漏洞
  3. dataGuard client 自动切换
  4. hdu-5867 Water problem(水题)
  5. C#串口通信工作笔记0001---嵌入式_串口通信_数据发送
  6. Hive编程指南(含目录,高清,免费)
  7. 天涯社区离线阅读器(实现只看楼主功能)
  8. 制作QQ微信支付宝三合一收款码
  9. Leetcode︱448. Find All Numbers Disappeared in an Array找到所有数组中消失的数字.java
  10. gtest学习笔记--5 死亡测试
  11. 计算机网络的雏形为,计算机网络的发展雏形是什么(图文)
  12. 行测:判断推理之图形推理
  13. 教你提取图片中文字的四种方法
  14. Windows 10环境下TensorFlow(gpu版本)配置教程——[图解] [详细版][零基础]
  15. 使用手机访问电脑上开发的html页面
  16. 今天给大家讲一个鬼故事
  17. android 查看设备 x86,有了它 x86安卓设备就能用Windows软件了
  18. python爬取qq空间说说
  19. 【ADB】设置adb输入法
  20. 棋牌游戏成新潮,站稳脚跟还需了解趋势

热门文章

  1. JZOJsenior4740.【雅礼联考GDOI2017模拟9.2】Zjr506的捕猫计划
  2. 剑桥计算机通用英语优学院,优学院《剑桥计算机通用英语》答案2020中国大学《光学(王海艳)》查询答案...
  3. android动态设置背景
  4. Qt Creator编写无人机地面站系统
  5. Docker(最详细的Docker入门指南,一通百通)
  6. Java操作XML文件及转义字符
  7. C/C++ 编程推荐学习顺序和书籍
  8. java:@Repeatable注解使用
  9. Lotus Leaves
  10. mac go linux 目标,Mac下Golang安装以及目录结构-Go语言中文社区