bash脚本编程之五 while循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bash脚本编程之五 while循环相关的知识,希望对你有一定的参考价值。

while循环详解

    我们Shell脚本的编程结构有三类,分别是:

        1,顺序结构

        2,选择结构:

            ->if语句

            ->case语句

        3,循环结构

            ->for循环

            ->while循环

            ->until循环

    今天我们就来说一说while循环,while循环和for循环不同的地方在于,for循环中我们是知道循环的次数的,但是我们的while循环适用于循环次数未知的场景,while循环必须得有进入循环的条件和退出循环的条件:

        使用格式:while  condition(进入循环的条件,满足该条件就进行循环);do

                        statement

                            ...

                  done

    while循环不像for循环那样可以遍历列表,我们使用while循环的时候必须指定变量循环的条件,还得指定退出条件

·练习:写一个脚本,要求

    利用while循环,来实现1-100的和。

    脚本内容:

    技术分享

    脚本执行结果:

    技术分享

·练习:写一个脚本,要求

    让用户可以输入一串字母,无论用户输入什么字母,我们的脚本都可以将用户的输入的字母转换为大写的,直到用户输入quit才退出脚本,否则一直和用户交互下去

    脚本内容:

    技术分享

    脚本执行结果:

    技术分享

·练习,写一个脚本,要求

    每隔3秒去检查一下hadoop用户有没有登录系统,如果登录了就直接退出脚本,如果没有登录就一直检查下去,并显示hadoop用户没有登录

    脚本内容:

    技术分享

    脚本执行结果:

    技术分享

    我们在进行下一个脚本之前,先来讲一个好玩的知识点,我们的echo命令有一个-e选项,它的作用是用来生效启用逃逸符(反斜线开头的字符叫做逃逸符),逃逸符\033表示Ctrl键:

    echo   -e  "\033[1mHello\033[0m,world."

    ->第一个逃逸符到第二个逃逸符(也称为结束符)之间的部分为要改变的部分,其余部分不做改变,比如:

    技术分享

    1表示字体加粗

    两位整数用来控制颜色:

    3对应前景色

    31->红前景色

    32->绿前景色

    33->黄前景色

    ...

    总共七种颜色

    技术分享

    4对应背景色

    ...

   同样对应七种颜色

    技术分享

    我们的前景色、背景色以及我们的字体可以同时来使用,不同的数字类型用分号隔开即可:

    技术分享

·练习:写一个脚本,要求

    显示一个菜单给用户

     d|D) show disk usages.
    m|M) show memory usages.
    s|S) show swap usages.

    q
uit)quit

    当用户给定相应选项之后,显示相应的内容,除非用户输入quit,否则不退出脚本

    并且让我们给用户的提示信息看起来炫酷一点

    脚本内容:

    技术分享

    脚本执行结果:        

    技术分享


本文出自 “菜鸟的技术文档” 博客,请务必保留此出处http://zhubo.blog.51cto.com/11395641/1862135

以上是关于bash脚本编程之五 while循环的主要内容,如果未能解决你的问题,请参考以下文章

玩转Bash脚本:循环结构之while循环(转)

Bash脚本,while循环中的多个条件

inotifywait 未在 bash 脚本中执行 while 循环

While循环重置Bash脚本中的数字变量[重复]

While 循环在 Bash 的第一行之后停止读取

bash编程练习脚本