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发送问题答案给交互命令
“ ”表示回车
exp_continue 表示当问题不存在时继续回答下面的问题
expect eof 表示问题回答完毕退出 expect 环境
interact 表示问题回答完毕留在交互界面
set NAME [ lindex $argv n ] 定义变量

需要安装expect才可以使用该语句

2.编写自动应答脚本

这里写图片描述

这里写图片描述
执行脚本:
这里写图片描述
自动应答脚本的另一种写法

这里写图片描述
执行脚本:
这里写图片描述
3.编写脚本,自动连接其他主机

这里写图片描述
执行脚本:
这里写图片描述

原文地址:https://www.cnblogs.com/zhangyanran/p/9928822.html