Linux shell中while循环是怎样的
导读:本文共4626.5字符,通常情况下阅读需要15分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 在shell中while循环也是一个常用的循环结构,和其他语言的语法有许多类似之处,但是也有个别地方不一样。常用格式格式一while 条件;do 语句done格式二 死循环 while truedo 语句done格式三 死循环while :do 语句done格式四 死循环while [ 1 ]do 语句done格式五 死循环while [ 0 ]do 语句don... ...
目录
(为您整理了一些要点),点击可以直达。在shell中while循环也是一个常用的循环结构,和其他语言的语法有许多类似之处,但是也有个别地方不一样。
常用格式
格式一
while 条件;
do
语句
done
格式二 死循环
while true
do
语句
done
格式三 死循环
while :
do
语句
done
格式四 死循环
while [ 1 ]
do
语句
done
格式五 死循环
while [ 0 ]
do
语句
done
使用示例
示例一
Bash代码
COUNTER=0
while [ $COUNTER -lt 10 ]; do
echo The counter is $COUNTER
let COUNTER=COUNTER+1
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代码
for ((COUNTER=0; COUNTER
do
echo The counter is $COUNTER
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代码
while true
do
date
sleep 1
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代码
while read line
do
echo $line
done
[root@jfht ~]# while read line> do> echo $line> donehellohelloworldworldCtrl+D[root@jfht ~]#
实例四 处理命令行参数
文件 while_4.sh
Bash代码
#!/bin/shusage(){echo“usage:$0[-a][-e][-f][-h][-d][-s][-q][-x]”}whilegetoptsae:f:hd:s:qx:optiondocase“${option}”ina)ALARM=”TRUE”;;e)ADMIN=${OPTARG};;d)DOMAIN=${OPTARG};;f)SERVERFILE=$OPTARG;;s)WHOIS_SERVER=$OPTARG;;q)QUIET=”TRUE”;;x)WARNDAYS=$OPTARG;;\?)usage;exit1;;esacdoneecho“ALARM=$ALARM”echo“ADMIN=$ADMIN”[root@jfht~]#catwhile_4.sh#!/bin/shusage(){echo“usage:$0[-a][-e][-f][-h][-d][-s][-q][-x]”}whilegetoptsae:f:hd:s:qx:optiondocase“{OPTARG};;d)DOMAIN=OPTARG;;s)WHOIS_SERVER=OPTARG;;\?)usage;exit1;;esacdoneecho“ALARM=ADMIN”[root@jfht~]#chmod+xwhile_4.sh[root@jfht~]#./while_4.shALARM=ADMIN=[root@jfht~]#./while_4.sh-aALARM=TRUEADMIN=[root@jfht~]#./while_4.sh-ehyALARM=ADMIN=hy
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
Linux shell中while循环是怎样的的详细内容,希望对您有所帮助,信息来源于网络。