千家信息网

Linux shell中while循环是怎样的

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,今天就跟大家聊聊有关Linux shell中while循环是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在shell中while循环也
千家信息网最后更新 2024年12月12日Linux shell中while循环是怎样的

今天就跟大家聊聊有关Linux shell中while循环是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

在shell中while循环也是一个常用的循环结构,和其他语言的语法有许多类似之处,但是也有个别地方不一样。

常用格式

格式一

while 条件;

do

语句

done

格式二 死循环

while true

do

语句

done

格式三 死循环

while :

do

语句

done

格式四 死循环

while [ 1 ]

do

语句

done

格式五 死循环

while [ 0 ]

do

语句

done

使用示例

示例一

Bash代码

  1. COUNTER=0

  2. while [ $COUNTER -lt 10 ]; do

  3. echo The counter is $COUNTER

  4. let COUNTER=COUNTER+1

  5. done

[root@jfht ~]# COUNTER=0[root@jfht ~]# while [ COUNTER> let COUNTER=COUNTER+1> doneThe counter is 0The counter is 1The counter is 2The counter is 3The counter is 4The counter is 5The counter is 6The counter is 7The counter is 8The counter is 9[root@jfht ~]#

这个while循环改用for循环更好些

Bash代码

  1. for ((COUNTER=0; COUNTER

  2. do

  3. echo The counter is $COUNTER

  4. done

[root@jfht ~]# for ((COUNTER=0; COUNTER> do> echo The counter is $COUNTER> doneThe counter is 0The counter is 1The counter is 2The counter is 3The counter is 4The counter is 5The counter is 6The counter is 7The counter is 8The counter is 9[root@jfht ~]#

示例二

Bash代码

  1. while true

  2. do

  3. date

  4. sleep 1

  5. done

[root@jfht ~]# while true> do> date> sleep 1> done2010年 10月 10日 星期日 16:35:22 CST2010年 10月 10日 星期日 16:35:23 CST2010年 10月 10日 星期日 16:35:24 CST2010年 10月 10日 星期日 16:35:25 CST2010年 10月 10日 星期日 16:35:26 CST2010年 10月 10日 星期日 16:35:27 CSTCtrl+C[root@jfht ~]#

示例三 读取输入

Java代码

  1. while read line

  2. do

  3. echo $line

  4. done

[root@jfht ~]# while read line> do> echo $line> donehellohelloworldworldCtrl+D[root@jfht ~]#

实例四 处理命令行参数

文件 while_4.sh

Bash代码


#!/bin/sh usage() {   echo "usage: $0 [-a] [-e ] [-f ] [-h] [-d ] [-s] [-q] [-x]" } while getopts ae:f:hd:s:qx: option do     case "${option}" in         a) ALARM="TRUE";;         e) ADMIN=${OPTARG};;         d) DOMAIN=${OPTARG};;         f) SERVERFILE=$OPTARG;;         s) WHOIS_SERVER=$OPTARG;;         q) QUIET="TRUE";;         x) WARNDAYS=$OPTARG;;         \?) usage; exit 1;;     esac done echo "ALARM=$ALARM" echo "ADMIN=$ADMIN" [root@jfht ~]# cat while_4.sh#!/bin/shusage(){  echo "usage: $0 [-a] [-e ] [-f ] [-h] [-d ] [-s] [-q] [-x]"}while getopts ae:f:hd:s:qx: optiondo    case "{OPTARG};;        d) DOMAIN=OPTARG;;        s) WHOIS_SERVER=OPTARG;;        \?) usage; exit 1;;    esacdoneecho "ALARM=ADMIN"[root@jfht ~]# chmod +x while_4.sh[root@jfht ~]# ./while_4.shALARM=ADMIN=[root@jfht ~]# ./while_4.sh -aALARM=TRUEADMIN=[root@jfht ~]# ./while_4.sh -e hyALARM=ADMIN=hy

看完上述内容,你们对Linux shell中while循环是怎样的有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

0