for循环有两种格式 for name in [ ];do cmd ;done
还有第二章(c语言
for+((小括号 表达式1;表达式2;表达式3));do cmd ;
先执行exp1语句,是所有for循环的第一个语句,是个初始化语句,执行完
进行条件判断exp2,如果为真就执行循环体命令,循环体命令结束后,执行exp3
exp3执行完后再去判断exp2,如果是真就继续执行循环体,如果是假就循环结束,退出循环
循环体+exp3就代表循环体命令
也可以用while改写,
1+。。100可以用for循环第二种方式改写
中间也可以用bash语法,le
创建菜单
select 变量 in 列表
菜单可以用专门的语句来实现,select和for循环第一种格式基本上一样
实际上是把
列表中的内容自动化的放到菜单项里,默认死循环,就需要在脚本里break跳出循环
想要退出只需要加上break就可以
但是提示符#?,不明确,就可以修改
PS2是多行重定向默认提示符
默认是>是可以用ps2更改
可以写这样的脚本方便自己按照什么情况运维
用户输入的变量有所保留放在replay里
可以写1234,对应创建各种各样的脚本,调用不同的脚本
trap,捕捉,陷阱
当一个命令执行的时候,按了ctrl+c,实际上发了2号信号(退出信号),如果一个脚本执行一半按ctrl+c是不合理的,你可以写脚本忽略,可以捕捉信号
就想捕获2号信号,操作命令要放在单引号里
看着执行,不退出
11开始不进行操作,发现了信号什么也不干
、
-恢复ctrl+c恢复默认值
后面没有自定义就不显示操作了
为了避免用户按ctrl+c或者其他的,把指令打断,就可以把信号捕捉加进去,就不起作用
能否捕捉15信号(直接语出))
9信号捕捉不了