Shell中常用的语句
exit 完全中断脚本的执行 |
break 中断脚本的循环,但是会执行循环外的语句 |
continue 跳出本次循环,进行下一次循环 |
进一步了解三者的区别,有如下实验:
执行该脚本:
脚本正常运行情况:
1.格式
for NUM in 1 2 3
for NUM in {1..3}
for NUM
in 或者 for NUM in
do
done
2.{1..10}与 `seq 1 10`
{1..10}是1到10,`seq 1 10 `也是1到10,但是seq可以设定步长
例如:`seq 1
2 10` 步长为2从1到10
有如下实验:
执行该脚本:
执行该脚本:
编写脚本检测ip是否存在 |
建立一个数据库,编写脚本对所有数据库进行备份操作,每个数据库备份一个文件,以.sql结尾备份到/mnt/mysql_dump |
编写脚本:
执行脚本:
1.语句格式
2.编写脚本,监控根分区的使用情况,当达到80%时给root发送邮件
查看根分区的使用情况
3脚本编写,监控根分区的使用情况,达到80%时自动弹出至当前shell
脚本的执行:
1.if语句的格式
2.脚本练习 email格式
<1>利用if语句编写脚本,判断文件类型
执行该脚本:
<2>编写脚本按要求用文件建立用户
1.文件数量不对时报错
2.文件不存在报错
3,文件行数差异报错
4.用户存在时显示用户存在,但是不修改用户密码
5.用户不存在时建立用户并设定密码
脚本的执行:
重新编辑用户文件,再次执行
<3>编写脚本输入cat 输出dog,输入dog输出cat
[ -eq ] 判断数值相等 [=] 字符相同
执行该脚本:
1.语句格式
2.脚本编写
<1>.编写脚本输入cat
输出dog,输入dog输出cat
脚本的执行:只进行一词匹配立即找到结果,相对if语句效率高
1.基础信息
expect 是自动应答命令用于交互式命令的自动执行 |
send发送问题答案给交互命令 |
“\r”表示回车 |
exp_continue 表示当问题不存在时继续回答下面的问题 |
expect eof 表示问题回答完毕退出 expect 环境 |
interact 表示问题回答完毕留在交互界面 |
set NAME [ lindex $argv n ] 定义变量 |
需要安装expect才可以使用该语句
2.编写自动应答脚本
执行脚本:
自动应答脚本的另一种写法
执行脚本:
3.编写脚本,自动连接其他主机
执行脚本: