标签:expr 数值 $1 取数 while循环 函数 封装 cal 次数
case多分支语句case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
......
*)
默认命令序列
esac
[root@localhost ~]# vim demo13.sh //编辑示例
#!/bin/bash
read -p "请输入一个字符:" a //交互指令
case $a in //编辑case语句
[a-z]|[A-Z]) //模式1
echo "输入的是字母" //输出提示信息
;;
[0-9]) //模式2
echo "输入的是数字" //输出提示信息
;;
*)
echo "输入的是特殊符号"
esac //结束语句
读取不同的变量值,用来逐个执行同一组命令
for 变量名 in 取值列表
do
命令序列
done
[root@localhost ~]# vim demo06.sh
#!/bin/bash
for ((i=1;i<=10;i++)) //循环条件
do
echo $i //输出i变量
done
[root@localhost ~]# vim aa.txt //创建txt文档
zhangsan
wangwu //输入信息
lisi
zhaoliu
~
:wq
[root@localhost ~]# vim demo07.sh //编辑循环脚本
#!/bin/bash
TMP=$(cat /root/aa.txt) //设置变量
for user in $TMP //编写循环
do
echo "用户是$user" //输出文档信息
done
重复测试某个条件,只要条件成立则反复执行
while 条件测试操作
do
命令序列
done
[root@localhost ~]# vim demo10.sh
#!/bin/bash
num=1 //声明变量
while [ $num -le 10 ] //编辑while循环
do
echo $num //输出循环结果
let num++; //等同于num=`expr $num+1`
done
重复测试某个条件,只要条件不成立则反复执行
nutil 条件测试操作
do
命令序列
done
[root@localhost ~]# vim demo15.sh
#!/bin/bash
i=0 //设置赋值变量
s=0
until [ $i -eq 51 ];do //编辑until语句
let s+=i;let i++ //计算1-50的求和过程
done
echo $s //输出求和数值
将命令序列按格式写在一起 (封装)
可方便重复使用命令序列
Shell函数定义
[function] 函数(){
命令序列
[return x] //使用return或exit可以显示地结束函数
}
[root@localhost ~]# vim demo17.sh
#!/bin/bash
sum(){ //设置函数名
#命令序列
s=`expr 2 + 2` //编辑函数命令序列
echo $s //输出计算结果
}
sum //调用输出函数
调用函数的方法
[root@localhost ~]# vim demo18.sh
#!/bin/bash
sum(){
s=`expr $1 + $2` //使用位置变量计算
echo $s
}
sum 2 2 //函数名后添加位置变量
方法一
数组名=(value0 value1 value2 ...)
方法二
数组名=([0]=value [1]=value [2]=value ...)
方法三
列表名="value0 value1 value2 ..."
数组名=($列表名)
方法四
数组名[0]="value"
数组名[1]="value"
数组名[2]="value"
数值类型
字符类型
使用""或‘‘定义
[root@localhost ~]# num=(11 22 33 44 55) //定义数组
[root@localhost ~]# len=${#num[*]} //数组长度赋值给len
[root@localhost ~]# echo $len //输出数组长度
5
[root@localhost ~]# num=(11 22 33 44 55) //定义数组
[root@localhost ~]# a=${num[0]} //赋值数组下表
[root@localhost ~]# echo $a //输出下表
11
[root@localhost ~]# a=${num[1]}
[root@localhost ~]# echo $a
22
[root@localhost ~]# num=(11 22 33 44 55) //定义数组
[root@localhost ~]# for i in ${num[*]} //使用for循环遍历数组
> do
> echo $i //输出数组
> done
11
22
33
44
55
标签:expr 数值 $1 取数 while循环 函数 封装 cal 次数
原文地址:https://blog.51cto.com/14473285/2441377