Shell循环语句及中断语句的使用 - 网站

Shell循环语句及中断语句的使用

分类:脚本专栏 · 发布时间:2023-07-08 06:39 · 阅读:5924

本文主要介绍了Shell循环语句及中断语句的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

for循环语句

读取不同的变量值,用来逐个执行同一组命令

for 变量名 in 取值列表 do 命令序列 done

遍历

for i in {1..10} 或 $(seq 1 10) 或 ((i=1; i<=10; i++)) do echo $i done 

for i in {1..10..2} 或 $(seq 1 2 10) 或 ((i=1; i<=10; i++)) do echo $i done 

例题1:批量添加用户

①创建用户名的文件

②编写脚本

#!/bin/bash a=$(cat name.txt) for i in a do useradd $i echo "123456" | passwd --stdin $i done

③验证

例题2:根据IP地址检查主机状态

#!/bin/bash for i in 192.168.100.{1..20} do ping -c 3 -i 0.5 -W 2 $i &> /dev/null if [ $? = 0 ] then echo "$i online" else echo "$i offline" fi done

while循环语句

重复测试某个条件,只要条件成立则反复执行

while 条件测试操作 do 命令序列 done
#!/bin/bash i=0 while (($i <=10)) do echo "$i" let i++ done

例题1 猜价格游戏

#!/bin/bash price=$[$RANDOM % 1000] a=0 times=0 echo "猜猜商品价格是多少" while [ $a -eq 0 ] do let times++ read -p "请输入你猜的价格:" b if [ $b -eq $price ];then echo "yes!" let a++ elif [ $b -gt $price ];then echo "你猜大了!" elif [ $b -lt $price ];then echo "你猜小了!" fi done echo "你总共猜了 $times 次"

例题二:批量添加用户

#!/bin/bash i=0 while [ $i -le 4 ] do let i++ useradd stu$i echo "123456" | passwd --stdin stu$i done

until循环语句

重复测试某个条件,只要条件不成立则反复执行

until 条件测试操作 do 命令序列 done
#显示1-10的整数 #!/bin/bash i=1 until [ $i -gt 10 ] do echo "$i" let i++ done

例题:计算1~50的值

#!/bin/bash i=1 sum=0 until [ $i -gt 50 ] do sum=$(($sum+$i)) let i++ done echo "$sum"

中断(break和continue)

①break

break跳出单个循环

#!/bin/bash for i in {1..5} do echo "外层循环 $i" for b in {1..5} do if [ $b -eq 3 ] then break fi echo "内层循环 $b" done done

②continue

continue中止某次循环中的命令,但不会完全中止整个命令

#!/bin/bash for i in {1..5} do echo "外层循环 $i" for b in {1..5} do if [ $b -eq 3 ] then continue fi echo "内层循环 $b" done done

IFS字段分割符

默认包含空格,制表符,换行符

1.修改 IFS=$'\t\n' 修改成只换行 IFS=$'\n' IFS=':' IFS=',' 2.备份 IFS. OLD=$IFS IFS=$'\n' ... IFS=$IFS.OLD

例题:输出环境变量PATH所包含的所有目录以及其中的所有可执行文件

#!/bin/bash OLDIFS=$IFS IFS=':' for i in $PATH do for a in $i/* do if [ -x $a -a -f $a ];then echo "$a 文件有执行权限" fi done done IFS=$OLDIFS

到此这篇关于Shell循环语句及中断语句的使用的文章就介绍到这了,更多相关Shell循环语句及中断语句内容请搜索0133技术站以前的文章或继续浏览下面的相关文章希望大家以后多多支持0133技术站!

标签:
Shell 循环语句 中断语句

相关文章

shell编程中for循环语句的实现过程及案例

Bash Shell中主要提供了三种循环方式:for、while和until,下面这篇文章主要给大家介绍了关于shell编程中for循环语句的实现过程及案例,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

shell实现贪吃蛇的示例代码

本文主要介绍了shell实现贪吃蛇的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

使用shell读取ini文件方法步骤

本文主要介绍了使用shell读取ini文件方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

Shell判断字符串变量是否为空的方法实现

本文主要介绍了Shell判断字符串变量是否为空的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

shell脚本换行问题实战记录

换行相信大家都不陌生,下面这篇文章主要给大家介绍了关于shell脚本换行问题的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

返回分类 返回首页