3、shellwhile循环,C-for循环,until循环,case分支结构,流程控制语句
2016-06-05 19:00
916 查看
while 循环结构
while 条件判断表达式
do
条件判断成立时执行的语句块
......
......
done
例:使用while循输出数字1到10(升序输出)
j=1
while [ $j -le 10 ]
do
#useradd wsyht$j
#userdel -r wsyht$i
echo $j
let j++ #j=j+1
done
C-for循环结构
for((赋初值;条件判断;步长))
do
条件判断成立时执行的操作
......
done
for((i=1;i<=5;i++))
do
echo "$i"
sleep 1
done
<=
<
>=
>
until循环结构(条件判断不成立才执行循环体,判断条件成立循环终止)
until 条件判断表达式
do
循环体
.....
done
until [ 1 -eq 1 ]
do
echo "wsyht"
sleep 1
done
true 恒真
false 恒假
#!/bin/bash
#while true
#until false
while :
do
:
#echo "yht"
#sleep 1
done
: 放在条件表达式的位置表示恒真,放在循环体内表示什么都不做
case 分支结构
根据变量的不同取值分别执行不同的命令
name=yht
case 变量名 in
模式1)
变量的值与模式1匹配时执行的操作;;
......
模式2)
变量的值与模式2匹配时执行的操作;;
......
模式3)
变量的值与模式3匹配时执行的操作;;
......
*)
变量的值与以上所有模式都不匹配时执行的操作;
......
esac
例:
#!/bin/bash
read -p "请输入你选择的字母 A | B | C | D " zimu
case $zimu in
A)
echo "你输入的是字母A";;
B)
echo "你输入的是字母B";;
C)
echo "你输入的是字母C";;
D)
echo "你输入的是字母D";;
*)
echo "$0只能选择A | B | C | D 中的一个"
esac
case通常和函数一起使用用给服务写启动脚本
流程控制语句
break continue操作对像是循环结构
break
跳出当前所在的循环体
continue
结束本次循环并开始下一次循环
exit
退出脚本 默认返回值是0
return
只给返回值,不会退出,用在函数里,设置函数的返回值
shift(位置移动函数)
用于迁移位置变量,将$1-$N值依次向左传递,并将没值的变量删除
例1:
$1 $2 $3
10 80 87 shift
80 87 shift
87 shift
例2:例3:
#!/bin/bashi=0
echo $#while [ $# -gt 0 ]
echo $1 $2 $3do
shifti=`expr $i + $1`
echo $#shift
echo $1 $2 $3 done
shiftecho $i
echo $#
echo $1 $2 $3
例:
#!/bin/bash
for((i=1;i<=9;i++))
do
if [ $i -eq 9 ]
#break
#continue
#exit 2
fi
echo $i
done
while 条件判断表达式
do
条件判断成立时执行的语句块
......
......
done
例:使用while循输出数字1到10(升序输出)
j=1
while [ $j -le 10 ]
do
#useradd wsyht$j
#userdel -r wsyht$i
echo $j
let j++ #j=j+1
done
C-for循环结构
for((赋初值;条件判断;步长))
do
条件判断成立时执行的操作
......
done
for((i=1;i<=5;i++))
do
echo "$i"
sleep 1
done
<=
<
>=
>
until循环结构(条件判断不成立才执行循环体,判断条件成立循环终止)
until 条件判断表达式
do
循环体
.....
done
until [ 1 -eq 1 ]
do
echo "wsyht"
sleep 1
done
true 恒真
false 恒假
#!/bin/bash
#while true
#until false
while :
do
:
#echo "yht"
#sleep 1
done
: 放在条件表达式的位置表示恒真,放在循环体内表示什么都不做
case 分支结构
根据变量的不同取值分别执行不同的命令
name=yht
case 变量名 in
模式1)
变量的值与模式1匹配时执行的操作;;
......
模式2)
变量的值与模式2匹配时执行的操作;;
......
模式3)
变量的值与模式3匹配时执行的操作;;
......
*)
变量的值与以上所有模式都不匹配时执行的操作;
......
esac
例:
#!/bin/bash
read -p "请输入你选择的字母 A | B | C | D " zimu
case $zimu in
A)
echo "你输入的是字母A";;
B)
echo "你输入的是字母B";;
C)
echo "你输入的是字母C";;
D)
echo "你输入的是字母D";;
*)
echo "$0只能选择A | B | C | D 中的一个"
esac
case通常和函数一起使用用给服务写启动脚本
流程控制语句
break continue操作对像是循环结构
break
跳出当前所在的循环体
continue
结束本次循环并开始下一次循环
exit
退出脚本 默认返回值是0
return
只给返回值,不会退出,用在函数里,设置函数的返回值
shift(位置移动函数)
用于迁移位置变量,将$1-$N值依次向左传递,并将没值的变量删除
例1:
$1 $2 $3
10 80 87 shift
80 87 shift
87 shift
例2:例3:
#!/bin/bashi=0
echo $#while [ $# -gt 0 ]
echo $1 $2 $3do
shifti=`expr $i + $1`
echo $#shift
echo $1 $2 $3 done
shiftecho $i
echo $#
echo $1 $2 $3
例:
#!/bin/bash
for((i=1;i<=9;i++))
do
if [ $i -eq 9 ]
#break
#continue
#exit 2
fi
echo $i
done
相关文章推荐
- android wifi 无线调试
- 运维入门
- 动态清空 nohup 输出文件
- install scrapy with pip and easy_install
- Linux Shell常用技巧
- Shell 脚本编程陷阱
- C#中循环语句:while、for、foreach的使用
- shell字符串操作详解
- Lua中数字for循环实例
- Shell中删除某些文件外所有文件的3个方法
- C#用链式方法表达循环嵌套
- perl 控制结构 条件控制 if while
- Ruby中执行Linux shell命令的六种方法详解
- Sql存储过程游标循环的用法及sql如何使用cursor写一个简单的循环
- VB使用shell函数打开外部exe程序的实现方法
- Shell编程的一些知识集合
- Shell中的for和while循环详细总结
- 利用Shell开发跳板机功能脚本案例