if语句

if [ 条件判断式 ]
  then
    程序
elif [ 条件判断式 ]
  then
    程序
else
  程序
fi

注意:
  a.使用fi结尾
  b.条件判断式和中括号之间需要有空格

[root@localhost sh]# cat if_test.sh
#!/bin/bash
#判断系统硬盘使用率 rate=$(df -h | grep /dev/sda1 | awk '{print $5}' | cut -d "%" -f1) if [ $rate -ge 90 ]
  then
    echo "dev/sda1 is full"
    echo "now use : $rate"
elif [ $rate -ge 80 ]
  then
    echo "dev/sda1 will be full"
    echo "now is $rate"
else
  echo "dev/sda1 is not full"
  echo "now use : $rate"
fi [root@localhost sh]# sh if_test.sh
dev/sda1 is not full
now use : 7
[root@localhost sh]#

case语句

case $变量名 in
  "值1")
    如果值为1就执行这里的代码
    ;;
  "值2")
    如果值为2就执行这里的代码
    ;;
  *)
    如果都匹配不上就执行这里的代码
    ;;
esac

[root@localhost sh]# cat case_test.sh
#!/bin/bash
#判断用户输入 read -p "input yes/no: " -t 30 cho
case $cho in
  "yes")
    echo "intput is yes"
    ;;
  "no")
    echo "input is no"
    ;;
  *)
    echo "error input"
    ;;
esac [root@localhost sh]# sh case_test.sh
input yes/no: yes
intput is yes
[root@localhost sh]#

  

for语句

语法一:

for 变量 in 值1 值2 值3
  do
    程序
  done

[root@localhost sh]# cat for1.sh
#!/bin/bash
#打印时间
for time in moring noon afternoon evening
  do
    echo "This time is $time"
  done [root@localhost sh]# sh for1.sh
This time is moring
This time is noon
This time is afternoon
This time is evening
[root@localhost sh]#
[root@localhost sh]# cat for2.sh
#!/bin/bash
#打印文件名
ls > ls.log
for f in $(cat ls.log)
  do
    echo "File is $f"
  done [root@localhost sh]# sh for2.sh
File is case_test.sh
File is for1.sh
File is for2.sh
File is if_test.sh
File is ls.log
File is param_test1.sh
File is param_test2.sh
File is param_test3.sh
[root@localhost sh]#

语法二:

for ((初始值;循环控制条件;变量变化))
  do
    程序
  done

[root@localhost sh]# cat for3.sh
#!/bin/bash
#从1加到100
s=0
for((i=1;i<=100;i++))
  do
    s=$(($s+$i))
  done echo "Sum $s"
[root@localhost sh]# sh for3.sh
Sum 5050
[root@localhost sh]#

while循环
while [条件判断式]
  do
    程序
  done

[root@localhost sh]# cat while_test.sh
#!/bin/bash
#从1到100累加
i=1
s=0
while [ $i -le 100 ]
  do
    s=$(($s+$i))
    i=$(($i+1))
  done
echo "Sum $s"
[root@localhost sh]# sh while_test.sh
Sum 5050
[root@localhost sh]#

  

until循环
until [条件判断式]
  do
    程序
  done

[root@localhost sh]# cat until_test.sh
#!/bin/bash
#从1到100累加
i=1
s=0
until [ $i -gt 100 ]
  do
    s=$(($s+$i))
    i=$(($i+1))
  done
echo "Sum $s"
[root@localhost sh]# sh until_test.sh
Sum 5050
[root@localhost sh]#

  

Linux中的流程控制语句的更多相关文章

  1. linux shell awk 流程控制语句(if,for,while,do)详细介绍

    在linux awk的 while.do-while和for语句中允许使用break,continue语句来控制流程走向,也允许使用exit这样的语句来退出.break中断当前正在执行的循环并跳到循环 ...

  2. Mysq中的流程控制语句的用法

    这篇博客主要是总结一下Mysq中的流程控制语句的用法,主要是:CASE,IF,IFNULL,NULLIF 1.case CASE value WHEN [compare-value] THEN res ...

  3. SQL SERVER中的流程控制语句

    流程控制语句 是指用来控制程序运行和流程分至点额命令.一般指的是逻辑计算部分的控制. 1.Begin End语句 封装了多个T-SQL语句组合,将他们组成一个单元来处理. 一般在条件查询或者循环等控制 ...

  4. JS中的流程控制语句

    什么叫做语句? 语句:可以理解为语言中一句一句完整的话,程序是由一条条语句构成的,语句是按照自上往下的顺序执行的. 在JavaScript可以使用{  }来为语句进行分组.同一{  }中的语句称为一组 ...

  5. JavaScript基础&实战(3)js中的流程控制语句、条件分支语句、for循环、while循环

    文章目录 1.流程控制语句 1.1 代码 1.2 测试结果 2.弹窗提示输入内容 2.1 代码 2.2 测试结果 3.条件分支语句 3.1 代码 3.2 测试结果 4.while和 do...whil ...

  6. java中的流程控制语句总结

    程序的结构分类: 顺序结构:按照写代码的顺序 一次执行 选择结构:根据条件的不同有选择的执行不同的代码 循环结构:在一定条件下 反复执行某一片代码 选择结构: 也叫分支结构 根据条件的不同,有选择的执 ...

  7. Linux Shell 02 流程控制语句

    一.if语句格式:支持if/elif/else形式,支持嵌套 1. command执行成功(及退出状态为0)时,执行command2 2. 当判断条件为test命令时,判断结果为true时,执行com ...

  8. python 中的流程控制语句

    原文 if 语句 >>> x = int(input("Please enter an integer: ")) Please enter an integer: ...

  9. PHP:第二章——PHP中的流程控制语句

    if语句的集中形式 <?php /*if(条件) 语句; if(条件){语句块} if(条件){语句或语句块}else{语句或语句块} if(条件){语句或语句块}elseif(条件){语句或语 ...

随机推荐

  1. MySQL学习总结(四)数据的基本操作以及MySQL运算符和常用函数

    数据库是存储数据库对象的仓库,数据库的基本对象是表,表用来存储数据.关于数据的操作也就是我们常说的CRUD,C指的是CREATE(插入数据记录).R指的是READ(查询数据记录).U指的是UPDATE ...

  2. CentOS7中关闭selinux

    在安装Cobbler和Puppet时需要关闭selinux,但是通常情况下载安装完CentOS7后,默认情况下SElinux是启用状态, 如下所示: [csharp] view plaincopy   ...

  3. Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package

    Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package 1. 统计的lib jar 列表1 2. Code3 3. 常用包名按找字母排序(2000个)4 ...

  4. Xamarin for VS 3.11.1594 Stable版免费完整破解补丁

    Xamarin for VS 3.11.1594 Stable版免费完整破解补丁 此版本只能用于3.11.1594版本破解, 其他版本可能会有错误. Android和IOS完整支持,不像某些破解只支持 ...

  5. HttpClient4.X 升级 入门 + http连接池使用

    转载请注明出处,谢谢~ http://blog.csdn.net/shootyou/archive/2011/05/12/6415248.aspx 在一次服务器异常的排查过程当中(服务器异常排查的过程 ...

  6. strex,ldrex

    volatile bool lock = false; void func(void) { int i; while(lock);   lock = true; for(i = 0; i < 4 ...

  7. iOS 学习笔记三【segmentedControl分段控制器详细使用方法】

    在iOS开发过程中,分段控制器的使用频率还是蛮高的,下面是我写的一个简单的demo,大家可以把代码直接复制过去,就可以使用,ios9最新支持. // // ViewController.m // 03 ...

  8. openWRT自学---对官方的开发指导文档的解读和理解 记录3:一些常用方法

    1.约定 configuration files follow the convention:  <name>.conf init files follow the convention: ...

  9. python之斐波那契数列

    斐波那契数列(Fibonacci sequence),又称黄金分割数 这样的一个数列:0,1,1,2,3,8,13,21,34…….. 特别指出:0不是第一项,而是第零项. 在数学上被以 递归的方法定 ...

  10. Oracle----oracle小知识总结

    1,表列的五种约束 not null, unique,primary key, foreign key, check 2,权限分配 grant 权限 on 表 to 用户 3,表和视图的区别 视图是一 ...