Linux进阶之bash编程(流程控制-while,break,continue)

在bash编程中,经常会涉及使用while语句,时常处理未知循环次数的情况。

  1. while语法

while [ express ]
do
#command
Done

2. 实战练习


  • 提示输入大于10小于20的整数;
while1.sh:
#!/bin/bash
echo -n "please input a digit between 10 and 20:"
read n
while [ $n -lt 10 ]||[ $n -gt 20 ]
do
	echo -n "please input a digit between 10 and 20:"
	read n
done
echo "your digit is $n,thank you!"

  • 猜数字,猜中则结束;
while2.sh:
#!/bin/bash
echo -n "please guess a number between 0 and 10:"
read n
while [ $n -ne 8 ]
do
	echo -n "please guess again(0-10):"
	read n
done
echo "congratulation,you guessed! the lucky number is 8!"

  • 通过执行脚本时带入的参数控制while
while3.sh:
#!/bin/bash
n=$1
while [ -n "$n"] [ "$n" -gt 0 ]
do
	echo -n "*"
    let n--
done
-------------------------
$bash while3.sh 5
$*****
  • 关于break和continue的使用。关键字"break" 用来跳出循环,而关键字”continue”用来不执行余下的部分而直接跳到下一个循环。
while4.sh:
#!/bin/bash
n=$1
while [ -n $n]
do
    if [ $n -eq 0]
	then
	   echo -e ""
       break
	else
	    echo -n "*"
		let n--
		continue
	fi
done

执行:$bash while4.sh 5
*****
时间: 2024-12-30 03:52:04

Linux进阶之bash编程(流程控制-while,break,continue)的相关文章

Linux进阶之bash编程(函数及总结)

1:bash函数的定义格式 [ function ] funname [()] {     action;     [return int;] } 说明: 1:可以带function fun() 定义,也可以直接fun() 定义,不带任何参数. 2:函数返回值,可以带有return来返回:如果没有,则用函数体最后一行的执行结果,作为返回值.return后跟0-255数值.在调用函数后,通过$?来获得返回值: 3:参数传递,调用函数时,可以往里面传递参数,$n($1,$2...)获取参数值. 2:

Linux进阶之bash编程(流程控制for循环)

bash脚本里定义后续命令执行日志输出路径 #!/bin/bash logDir=`date +%F` exec &>/tmp/logDir.log       //此次定义后续命令的执行输出日志路径 df -h top for循环 循环允许你重复一段代码固定次数,在循环代码执行期间,一个称为循环变量的特殊变量被赋予了不同的值: for循环很适合处理命令行上的参数以及文件集,for结构的语法如下: for name [in list] do statements done list为名称列表

Linux进阶之bash编程(流程控制if-else)

一:条件判断 if condition then     statements [elif condition     then statements. ..] [else     statements ] fi 整数比较: -lt,小于-le,小于等于-eq,等于-ge,大于等于-gt,大于-ne,不等于 bash脚本调试:bash -x  test.sh 练习: 1:编写一个bash程序,判断带入的参数大小. 2:提示用户输入一个数字,需要验证是否输入纯数字?并判断是奇数还是偶数! 方法1:

Linux进阶之bash编程四(内置变量)

一:基础回顾 1:文件清空 [[email protected] test]$ >log.txt 2:正常和错误重定向输出 //正常和错误都追加输出到同样地方 [[email protected] test]$ ifconfig &>>log.1 //正常输出重定向[[email protected] test]$ ifconfig >log //错误输出重定向[[email protected] test]$ ifconfig 2>log.23:命令执行控制 //休

流程控制之 break ,continue,return的区别

首先文字描述一下区别: break 为终止当前循环.跳出当前循环,但是后面的语句(即当前方法中当前循环之外后面的语句)还是会执行. continue 为停止本次循环,继续执行后面的循环.当然后面的语句还是会执行 return  为终止当前循环(跟break很像),跳出当前方法. 看概念是不是不容易明白,下面直接撸代码.简单明了 public class Test { public static void main(String[] args) { for(int i=1;i<4;i++){ Sy

shell脚本编程——流程控制

shell脚本编程--流程控制 目   录 一. if 二. case 三. for 四. while 五. until 六. 综合应用 一.if 1.语法 (1)单分支 if  判断条件:then fi (2)双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 fi (3)多分支 if 判断条件1; then 条件为真的分支代码 elif 判断条件2; then 条件为真的分支代码 elif 判断条件3; then 条件为真的分支代码 else 以上条件都为假

linux下的bash编程简要学习

linux下的bash编程简要学习     1.bash是什么: linux运行时系统只会运行系统运行所需要的运行脚本即系统守护进程,一般根据用户自己需求设定和实现的服务需要手动启动,这种服务进程通常由bash启动,脚本中的命令通常被按照一定规则被bash读取视作参数,因此在脚本头部要申明运行的bash类型,bash命令分为内建命令及外部命令,外部命令通过PATH进行依次查找. bash读取命令后将其启动(fork)成为一个进程,依次启动服务     2.bash控制语句:         本地

linux shell学习之shell流程控制

在linux shell编程中,流程控制结构与语句,也算是shell脚本中的重点了,不了解的朋友,跟随脚本小编一起来学习下吧. linux控制流结构学习. 一,shell控制流结构 1.控制结构   6.while循环 2.if then else语句 7.until循环 3.case 语句  8.break控制 5.for循环    9.continue控制 1,if then else  if 条件1 如果条件1为真  then 那么  命令1 执行命令1  elif 条件2 如果条件1不成

10、shell编程+流程控制+分支嵌套

SHELL 编程 shell 是一个命令解释器,侦听用户指令.启动这些指令.将结果返回给用户(交互式的shell) shell 也是一种简单的程序设计语言.利用它可以编写一些系统脚本. 查看本机shell 信息: cat /etc/shells     --查看本支持的shell echo $SHELL --查看当前支持的shell shell 在执行命令时,各种命令的优先级: 别名 -> 关键字 -> 函数 -> 内置命令 -> 脚本 别名:命令的另一种形式,有些情况下可以简化命