for,while等循环

for格式一:

复制代码
for 变量名称(前面没有$) in 范围
 do                                            
 命令序列
done

#!/bin/bash
for i in {1..10}
do 
  echo $i
done

for格式二:

复制代码
for (( 表达式1;表达式2;表达式3 )) ; do
 命令序列
done

#!/bin/bash
for(( i=0;i<=5;i++ )) ; do
echo $i
done

while格式

(( ))用作整数运算。在 bash 中,(( ))的整数运算符号大致有这些:

      • * / 加、减、乘、除
  • % 余数运算
  • & | ^ ! AND、OR、XOR、NOT运算

(( ))中的变量名称也可以在其前面加 符号

复制代码
while [判断条件]

do

​ 命令序列

done


#!/bin/bash
i=0
odd_sum=0
even_sum=0
while [ $i -lt 100 ]
 do
   let i++
   if [[ $(($i % 2)) -eq 0 ]]
   then
     even_sum=$(( $i+$even_sum ))
   else
     odd_sum=$(( $i+$odd_sum ))
   fi
 done
echo "奇数累计和 ${odd_sum} 偶数的累计和: ${even_sum}"

until循环

复制代码
until [条件判断]
do
 命令序列
 done

until [ 1 -eq 2 ]
do
 echo "循环了"
done

#!/bin/bash
a=$(( RANDOM%10+1))
echo "正确数字是 " $a
times=0
for(( ; ; ))
do 
   read -p "输入数字" num
   let times++
   if [[ $num -eq $a ]]
   then
      echo "猜对了!"
      break
   elif [[ $num -gt $a ]]
   then
      echo "数字偏大"
   elif [[ $num -lt $a ]]
   then 
      echo "数字偏小"
   fi
done
echo "一共猜了 $times 次"
相关推荐
hi_ro_a3 分钟前
Linux基础开发工具详解
linux·运维·服务器
嵌入式阿蔡10 分钟前
Linux_01:交叉编译与开发环境实战——从单片机跨到 Linux 的第一道坎
linux·运维·网络·单片机·嵌入式硬件·嵌入式实时数据库
Pocker_Spades_A1 小时前
终端里也能斗地主:Linux部署Ratel,从本地对战到公网联机
linux·运维·服务器
佳児素花痴╮1 小时前
C语言链接库
linux·运维·服务器
云飞云共享云桌面1 小时前
苏州昆山精密机械加工厂研发部门10个SolidWorks可以部署云飞云共享云桌面吗?
大数据·运维·服务器·自动化·汽车·制造
小嵌同学2 小时前
Linux 内核中的 Per-CPU 机制详解
linux·运维·arm开发·嵌入式
云飞云共享云桌面2 小时前
自动化设备厂 10 人研发团队,如何共用一台服务器做 SolidWorks 建模?
运维·服务器·网络·3d·自动化·制造
QH139292318803 小时前
NVIDIA H200 H300服务器
运维·服务器·开发语言·网络·信息与通信
Hello-FPGA3 小时前
嵌入式LINUX 设备 ip配置后怎么保存才能掉电不消失?
linux·运维·服务器
艾伦_耶格宇4 小时前
【DOCKER容器实战】-2MySQL
运维·docker·容器