运维脚本练习

【练习1】建立用户


执行user_create.sh userfile passwdfile

要求:
创建userfile中的用户
设定userfile用户的密码为passwdfile中的密码
当脚本后面的文件数不足两个时报错
当两个文件行数不一致时报错
当文件不存在时报错
当用户存在时报错
当不是超级用户执行此脚本时报错


Shell编程13_运维脚本练习
Shell编程13_运维脚本练习
Shell编程13_运维脚本练习

2.备份数据库


执行db_dump.sh westos 备份westos数据库
要求:
脚本执行后备份数据库的所有库到/home/kiosk/shell/exercise目录中
备份文件名称为“库名称.sql” 当此文件存在时报错,并且询问动作
S跳过备份;B备份“库名称.sql”文件为“库名称_backup.sql” ;O覆盖原文件


数据库中的数据:
Shell编程13_运维脚本练习
编辑脚本文件
Shell编程13_运维脚本练习
执行备份脚本
Shell编程13_运维脚本练习
查看备份文件信息
Shell编程13_运维脚本练习

3.倒计时脚本文件


3.倒计时1分钟2秒


编辑脚本
Shell编程13_运维脚本练习
运行结果
Shell编程13_运维脚本练习

4.自动应答一


expect是自动应答命令用于交互式命令的自动执行
spawn是expect中的监控程序,其运行后悔监控命令提出的交互问题
send 发送问题的答案给交互命令
“\r” 表示回车
exp_continue 表示当阿问题不存在时继续回答下面的问题
expect eof 表示问题回答完毕后退出expect环境
interact 表示问题回答完毕后留在交互界面
set NAME [lindex $argv n ] 定义变量


问题的脚本
应答的脚本
运行结果

5.自动应答二


采用自动应答expect远程建立userfile文件中的用户,以及设置passwdfile文件中对应的密码
用户存在报错
expect自动应答配合crontab定时执行交互命令,解放人力,更加方便


相关文章: