建站属于什么行业,用来做网页的软件,北京电脑软件培训学校,html网页设计 作业一、for循环
读取不同的变量值#xff0c;用来逐个执行同一组命令#xff0c;经常使用在已经知道要进行多少次循环的场景。
1、基本格式
for 变量名称(注意是名称#xff0c;不是变量$等) [ in 名称范围 ] (可以不写)do 执行内容 若满足循环则做什么动作do…一、for循环
读取不同的变量值用来逐个执行同一组命令经常使用在已经知道要进行多少次循环的场景。
1、基本格式
for 变量名称(注意是名称不是变量$等) [ in 名称范围 ] (可以不写)do 执行内容 若满足循环则做什么动作done for循环结束标志
2.脚本
1.打印一列问号
#!/bin/bash
for i in {1..9}
do
echo -e ?
done 2.打印正方形
#!/bin/bash
for j in {1..9}
do
for i in {1..9}
do
echo -e * \c
#\c换行
done
echo
#换行
done 3.九九乘法表
#!/bin/bash
for j in {1..9}dofor i in seq $jdoecho -e ${i}x${j}$[i*j] \t\c#\t tab键可以对齐doneecho
done 4.求1..10奇数和
#/bin/bash
sum0
for i in {1..10..2}
dosum$[sumi]let i
done
echo 10以内的奇数和为$sum 5.批量创建用户并修改密码
#!/bin/bash
for user in {1..10}doecho stu${user}|xargs -n1 useraddecho 123123|passwd --stdin stu${user}done 6.1累加到100
#/bin/bash
sum0
for ((i0;i100;i))
do
sum$[isum]
done
echo sum$sum
7.1累加到100
#!/bin/bash
sum0
for i in {1..100}
do
let sum$i$sum
#sum$[isum]
#两种方法都可以
done
echo sum$sum
3.for语句第二种格式 类C语言格式
for (( 表达式1 表达式2表达式3 ))
do
执行内容 若满足循环则做什么动作
done for循环结束标志
表达式1定义变量并赋值
表达式2决定是否循环
表达式3决定循环变量如何改变决定循环什么时候结束
举例
vim a.sh
脚本内容
#!/bin/bash
for(( i0;i5;i )) #定义for循环i变量初始值为0循环条件i小于等于5每循环一次i自加1
do
echo $i #for循环每循环一次执行一次输出$i
done #for语句结束标志
bash a.sh #调用shell执行脚本
输出结果
0
1
2
3
4
5 二.while
1.基本格式
用于不知道循环次数需要主动结束循环或达到条件结束循环。
重复测试某个条件只要条件成立则反复执行
格式
while [ 判断条件 ]
do #do代表循环的开始判断式/命令序列
done #done代表循环的结束
2.脚本
1.猜价格小游戏
#!/bin/bash
pecho $[RANDOM%10001]
t0while true
do
let t
read -p 请输入您猜测的价格1-1000 h
if [ $h -eq $p ]
then
echo 恭喜您猜中了您一共猜测了$t次
exit
elif [ $h -gt $p ]
then
echo 您猜测的价格过高
else
echo 您猜测的价格过低
fi
done 2.1累加到100
#!/bin/bash
i0
sum0
while [ $i -le 100 ]
do
sum$[isum]
let i
done
echo $sum 3.死循环语句
①while [1 -eq 1] 判断条件写一个永久为真的条件 do 一直执行do内的命令 done
②while true 直接写判断条件为真 do 一直执行do内的命令 done
③while : 判断条件为冒号也表示死循环 do 一直执行do内的命令 done
三.until
1.基本格式
重复测试某个条件只要条件不成立则反复执行
格式
until [ 判断条件 ]
do判断式/命令序列
done
2.脚本
1.1累加到100
#!/bin/bash
sum0
i0
until [ $i -gt 100 ]
dosum$[sumi]let i
done
echo {1..100}的和$sum 四.循环语句中的break、exit和continue的使用
1.break的使用
当满足条件的情况下break会跳出当前循环体
在某个循环中遇到break直接结束此次循环但是不影响外边嵌套的循环。
break [数字] 结束数字中的几次循环若为2则结束自己所在循环和外边嵌套的一层循环若为3则结束自己所在循环和外边嵌套的2层循环
举例
vim a.sh #创建a.sh脚本
脚本内容:
#!/bin/bash
for j in {1..3} #第一层for循环j1,2,3各执行一次do的内容
do #第一层for循环的执行内容for i in {1..5} #第二层for循环i1,2,3,4,5各执行一次do的内容do #第二层for循环的执行内容 if [ $i -eq 3 ] #第二层for循环中添加的if判断语句当$i3是执行then内容then break #第二层for循环判断语句执行命令break结束循环fi #if语句结束echo $i #第二层for循环语句执行每循环一次输出$idone #第二层for循环语句结束标志
done #第一层for循环语句结束标志
bash a.sh #调用bash执行a.sh脚本
执行结果第二层执行在$i3是结束了循环所以只能输出1和2第一层for循环是循环3次所以输出了3次。
1
2
1
2
1
2 2.exit的使用
当满足条件的情况下exit会直接退出当前脚本
#!/bin/bash
for ((i1;i5;i))
doecho 此${i}为外部循环for((j1;j4;j))doif [ $j -eq 3 ] ------如果j的值为3thenexit ------结束当前脚本fiecho -e \t此${j}为内部循环done
done
3.continue的使用
continue中止某次循环中的命令但不会完全中止整个命令
#!/bin/bash
for ((i1;i5;i))
doecho 此${i}为外部循环for((j1;j4;j))doif [ $j -eq 2 ] ------如果j的值为2thencontinue ------中止循环中本次的命令但不会完全中止整个循环或脚本fiecho -e \t此${j}为内部循环done
done