for :明确循环次数

while :不确定循环换次数

while循环

(1)

while CONDITION;do

      statement

      statement

      <改变循环条件真假的语句>

done

编写脚本,计算1--100的和

#!/bin/bash
#
sum=0
i=1 while [ $i -le 100  ];do
    let sum=$sum+$i
    let i=$i+1
done echo $sum

编写while循环,输入q退出(不输入q,不退出)

#!/bin/bash
#
read -p "请输入你的选择:" choice while [ $choice != q  ];do
    echo -e "\033[31m输入错误\033[0m" #加的颜色代码
    read -p "请输入你的选择:" choice
done


(2)

while true;do

      statement

      statement

      <break退出>

done

编写while循环,输入q退出(不输入q,不退出)

#/bin/bash
#
while true;do
    read -p "请输入你的选择" str
    echo "输入错误"
    if [ $str == q ];then
        break
    fi
done

编写脚本,每4秒查看系统的内存

#!/bin/bash
#
while true;do
    uptime
    sleep 3
done


(3)

while read line;do

    statement

    statement

done < file

编写脚本,向系统每个用户打招呼

v#!/bin/bash
#
while read line;do
    sh_name=$(echo $line | awk -F: '{print $1}')
    echo "Hello $sh_name" done < /etc/passwd


编写脚本,统计/bin/bash /sbin/nologin的个数

[root@wei while]# cat 6.sh 
#!/bin/bash
#
bash_number=0
nologin_number=0 while read line;do
    sh_name=$(echo $line | awk -F: '{print $7}')
    case $sh_name in
        /bin/bash)
            let bash_number=$bash_number+1
            ;;
        /sbin/nologin)
            let nologin_number=$nologin_number+1
            ;;
    esac done < /etc/passwd echo "bash用户数量:$bash_number"
echo "nologin_number用户数量:$nologin_number"

执行效果

[root@wei while]# ./6.sh 
bash用户数量:17
nologin_number用户数量:17

util循环:

util CONDITION;do

    statement

    statement

done

条件为假时,执行循环,条件为真时,结束循环

重点掌握

if,case

for,while

Linux shell while循环语句的更多相关文章

  1. Linux shell 中断循环语句

    无限循环: 循环有限的生命,他们跳出来,一旦条件是 false 还是 false 取决于循环. 由于所需的条件是不符合一个循环可能永远持续下去.永远不会终止执行一个循环执行无限次数.出于这个原因,这样 ...

  2. linux shell脚本常用语句

    linux shell 指令 诸如-d, -f, -e之类的判断表达式: 文件比较运算符-e filename  如果 filename存在,则为真  [ -e /var/log/syslog ]-d ...

  3. Linux shell for循环结构

    Linux Shell   for循环结构 循环结构            1:循环开始条件      2:循环操作      3:循环终止的条件 shell语言          for,while ...

  4. Shell 编程 循环语句

    本篇主要写一些shell脚本循环语句的使用. for 循环 指定次数 #!/bin/bash for ((i=1;i<=10;i++)) do echo $i done [root@localh ...

  5. 1.Shell编程循环语句(if 、while、 until)

    循环语句 for循环语句 读取不同的变量值,用来逐个执行同一组命令 格式: for 变量名 in 取值列表 do 命令序列 done 示例:批量创建用户并设置密码 [root@localhost da ...

  6. Linux shell if判断语句

    无论什么编程语言都离不开条件判断.SHELL也不例外. 大体的格式如下: if list then do something here elif list then do another thing ...

  7. Linux Shell脚本编程-语句控制

    过程式编程语言bash脚本编程面向过程的编程  顺序执行:默认法则,按照顺序一条一条语句执行  选择执行:分支,条件判断,符合条件的分支予以执行  循环执行:将同一段代码反复执行有限次,所以循环必须有 ...

  8. Linux Shell编程case语句

    http://blog.csdn.net/dreamtdp/article/details/8048720 case语句适用于需要进行多重分支的应用情况. case分支语句的格式如下: case $变 ...

  9. Linux Shell编程 循环语法

    for循环 for 循环是固定循环,也就是在循环时已经知道需要进行几次循环.有时也把 for 循环称为计数循环.语法: for 变量 in 值1 值2 值3… do 程序 done 在这种语法中,fo ...

随机推荐

  1. 【oracle】update select语句

  2. Ultimate Chicken Horse GameProject需求规格报告书

    团队名称:超级鸡马 成员: 身份 姓名 分工 组长 邱志明  主程序设计 组员 吴钧诚  界面设计 组员 李承哲  陷阱设计 组员 冯英炽  客户,参与测试和需求分析工作 组员 林裕权  素材确定 修 ...

  3. tornado之获取参数

    self.write()  # 返回字符串 self.redirect()  # 重定向 self.render()  # 返回html页面 一. 获取url中携带的参数, 如: 127.0.0.1: ...

  4. Xamarin.Forms移动开发系列3:项目剖析

    摘要 本文主要进行Xamarin.Forms应用程序剖析. 前言 本文介绍Xamarin.Forms应用程序剖析. 由于本系列重点研究对象为Xamarin.Forms,所以对Xamarin.Andro ...

  5. 前端Vue项目——课程详情页面实现

    一.详情页面路由跳转 应用 Vue Router 编程式导航通过 this.$router.push() 来实现路由跳转. 1.绑定查看详情事件 修改 src/components/Course/Co ...

  6. python read readline readlines区别

    file 对象使用 open 函数来创建,下表列出了 file 对象常用函数read.readline.readlines区别: 1.从文件读取指定的字节数,size如果未给定或为负则读取所有. fi ...

  7. 在Button样式中添加EventSetter,理解路由事件

    XML <Window.Resources> <Style x:Key="ButtonStyle2" TargetType="{x:Type Butto ...

  8. 基于贝叶斯网(Bayes Netword)图模型的应用实践初探

    1. 贝叶斯网理论部分 笔者在另一篇文章中对贝叶斯网的理论部分进行了总结,在本文中,我们重点关注其在具体场景里的应用. 2. 从概率预测问题说起 0x1:条件概率预测模型之困 我们知道,朴素贝叶斯分类 ...

  9. DNS:从零搭建公司内网DNS服务器

    写在前面的话 网上关于 DNS 的文章其实一搜索一大把,但是看别人的文档一般都会有个问题,乱,不讲究,全是 ctrl c + ctrl v,我个人是看不下去的.头皮发麻.所以决定自己来写写这方面的东西 ...

  10. 【spring】【spring boot】获取系统根路径,根目录,用于存储临时生成的文件在服务器上

    今日份代码: private static final String UPLOAD_TEMP_FILE_NAME = "测试商品数据.xlsx"; /** * 获取临时文件路径 * ...