shell脚本编程之if条件判断与for、while、until循环

一、if语句

语法:
if 测试条件1 ; then
       分支1
elif  测试条件2; then
       分支2
...
else 
       分支n
fi

说明:测试条件1为真,则执行分支1退出;测试条件1为假,则判断测试2是否为真,根据返回值来决定是否执行分支2

           ;后续分支同理。

示例:传递一个用户给脚本:

如果此用户的id为0,则显示说这是管理员:

如果此用户的id大于等于500,则显示说这是普通用户

如果此用户的id大于0小于500,则显示说这是系统用户

否则,则显示此用户不存在

2.png

二、for循环

语法:
for 变量名 in 取值列表
do
     循环体
done

说明:变量依次从取值列表中取值后执行循环体,则至遍历取值列表。

示例:利用for循环计算/etc/passwd中所有用户UID相加之和。

3.png

三、while循环

语法:
while 条件测试; do 
      循环体
done

说明:首先进行条件测试,如果结果为真,则进入循环,执行循环体;结果为假,则退出循环。

示例:利用while循环求100以内正整数之和。

4.png

四、until循环

语法:
until 条件测试; do 
      循环体
done

说明:until与while刚好相反,条件测试结果为假则进入循环,为真则退出循环。

示例:利用until循环求100以内正整数之和。

5.png

原创文章,作者:老鼠上了猫,如若转载,请注明出处:http://www.178linux.com/7282

(2)
老鼠上了猫老鼠上了猫
上一篇 2015-08-24 21:44
下一篇 2015-08-24

相关推荐

  • http协议及httpd特性详解

    前言 随着互联网的迅猛发展和网络的普及,各类网站层出不穷,网站也成为企业宣传和实力展现的主要途径之一,说到网站就不得不说一下web服务了,现在比较流行的web服务还是当属Apache即httpd。本文将详解http协议及httpd的特性。 http协议详解 http协议 http: Hyper Text Transfer Protocol 超文本传输协议 传…

    Linux干货 2015-04-13
  • Network Teaming网络组总结

    一、Network Teaming网络组的创建 第一步;准备工作,建立两个网络接口eth0、eth1,把原有网卡配置文件删除; 命令:cd /etc/sysconfig/network-scripts                rm -rf ifcfg-* &nbs…

    2017-03-26
  • centos系统中常用的命令

    日志文件说明:  /var/log/message      系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一   /var/log/secure      &nb…

    Linux干货 2016-06-28
  • Linux 进程及作业管理

    一 进程、线程、程序概念 1、进程(Process) 什么是进程,简单的说,进程是程序的执行实例,即运行中的程序,同时也是程序的一个副本;程序是放置于磁盘的,而运行中的程序是位于内存中的。 2、线程(Thread) 一个进程至少包括一个线程,通常将该线程称为主线程,所以线程是比进程更小的单位,是系统分配处理器时间资源的基本单元。一个进程要想同时在多颗CPU上…

    Linux干货 2016-03-15
  • LVS负载均衡wrrdpress

    项目要求:(1) lvs 调度两台 nginx+php-fpm real-server,采用 dr 模型,调度算法为 rr(2) mariadb 为 real-server 提供数据库,nfs 挂载至 2 台 real-server 提供文件服务项目环境:LVS-SERVER( CentOS 7 )DIP:172.18.99.6VIP:172.18.99.6…

    Linux干货 2017-05-16
  • N25-第八周作业

    第八周 1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主使用红色显示; #!/bin/bash # ip=172.16.250. for i in {1..254}; do if ping -w 1 -c 1 $ip$i &> /dev/n…

    Linux干货 2017-03-09