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 次"
相关推荐
考虑考虑1 小时前
docker compose环境变量替换
运维·后端·自动化运维
Java陈序员2 小时前
轻量运维面板!一款现代化的服务器控制面板工具!
运维·服务器·python·react.js·github
bosins2 小时前
WSL 迁移指南:如何将 Linux 环境完整复制到另一台电脑
linux·运维·服务器
IT利刃出鞘2 小时前
Docker Compose--安装WordPress--方法/示例
运维·docker·容器
handler014 小时前
【Linux】线程与虚拟内存的底层世界
linux·运维·服务器·c++·线程·虚拟地址空间·共享内存
新时代牛马4 小时前
实时 Linux:PREEMPT_RT、延迟来源与观测
linux·运维·服务器
zhexunnb5 小时前
深挖SAP系统模块价值,助力无锡制造企业打通数字化全链路
运维
weipt6 小时前
利用wsl给windows电脑上安装一个ubuntu
linux·运维·ubuntu
jarreyer6 小时前
【软件操作】加快资源管理器打开速度
运维
楚疏笃6 小时前
linux下给OpenCloudOS根目录扩容
linux·运维·服务器