文章目录
一、for循环
for循环,又有人称之为条件循环,或者for i in ,其实就是for循环的特性,次数和给与的条件是成正比的。
1.for循环案例
for 变量名 in {list}
do
#执行语句
done
for i in {a..c}
do
#执行语句
done
for i in {1..5} //{}里面不识别变量
do
#执行语句
done
2.{}和seq在for循环的应用
#!/bin/bash
a=10
for i in $(seq 1 $a);do #seq生成数字序列
echo "一:$i"
done
for i in {1..10..2};do #1到10,2为步长
echo "二:$i"
done
for i in $(seq 2 2 10);do #2到10,中间的2为步长
echo "三:$i"
done
~
3.不带列表循环执行时由用户指定参数和参数的个数决定的
4.文件传值
二、while语句
1.引入库
break 和 continue的区别
break 语句结束整个循环
continue 语句只结束本次循环
#!/bin/bash
i=0
while [ $i -le 5 ]
do
if [ $i -eq 3 ];then
let i++
continue
elif [ $i -eq 5 ];then
break
fi
let i++
echo $i
done
三、 until 循环语句结构
用法:重复测试某个条件,只要条件不成立则反复执行(与while相反)
四、函数
1.shell函数定义
将命令序列按格式写在一起
可方便重复使用命令序列
[function] 函数名(){
命令序列
[return x] #使用return或exit可以显示的结束函数
}
或者
#也可以省略掉[function],它表示该函数的功能
函数名() { #函数名后面()是没有内容的
命令序列 #我们执行的命令内容放在{}里面
}
函数返回值return
return表示退出函数并返回一个退出值,脚本中可以用$? 变量显示该值使用原则
函数一结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码
退出状态码必须是0~255,超出时值将为256取余
传参
参数的用法
函数名称、参数1、参数2、参数3 …
阶乘
五、数组的使用方法
标题数组的定义方式
下标从0开始
第一种:直接把要加入数组的元素用小括号括起来,中间空格分开
num=(11 22 33 44)
${#num}显示字符串长度
数组名=(value0 value1 value2)
第二种:直接把要加入数组的元素用小括号括起来,中间用空格分开
num=([0]=55 [1]=66 [2]=77 [4]=88)
数组名=([0]=value [1]=value [2]=value [4]=value…)
第三种:先把要记入数组的元素全部先赋值给一个变量,然后引用这个变量加入到数组
list=“11 12 13 14”
num=($list)
echo ${#a[*]} #显示数组长度
echo ${a[2]} #显示数组下标下的元素
echo ${a[*]} #显示数组全部元素
unset a #删除数组