Linux:shell示例

实验一:用户管理脚本

要求:
执行 users_create.sh userlist passlist
建立 userlist 列表中的用户
设定 userlist 列表中的密码为 passlist 列表中的密码
当脚本后面跟的文件个数不足两时,报错
当文件行数不一致时报错
当文件不存在时报错

[root@desktop mnt]# cat userfile     ##添加用户
user1
[root@desktop mnt]# cat passfile     ##添加密码
uaer1123
[root@desktop mnt]# vim user_create.sh     ##编辑脚本
[root@desktop mnt]# sh user_create.sh userfile 
1.ERROR:Please input userfile and passfile follow scripts!!     ##提示
[root@desktop mnt]# sh user_create.sh userfile passF
3.ERROR:passF is not exist!!    ##提示
[root@desktop mnt]# sh user_create.sh userfile passfile    ##调用成功
user1 create
[root@desktop mnt]# id user1   ##查看用户

脚本内容:
这里写图片描述
这里写图片描述

实验二:数据库备份

要求:
执行 db_dump.sh westos( 数据库密码 )
脚本执行后会备份数据库中的所有库到 /mnt/mysqldump 目录中
备份文件名称为 “库名称 .sql” 当此文件存在时报错并询问动作
输入“ S” 跳过备份,当输入“ B” 时备份“库名称 .sql” 文件
为“库名称 _backup.sql”, 当输入“ O” 时,覆盖源文件

[root@desktop mnt]# vim db_dump.sh      ##编辑脚本
[root@desktop mnt]# yum install mriadb -y    ##安装数据库
[root@desktop mnt]# systemctl start mariadb       ##开启服务
root@desktop mnt]# sh db_dump.sh    
mysql.sql is backup!!
test.sql is backup!!
[root@desktop mnt]# sh db_dump.sh

脚本内容:
这里写图片描述
这里写图片描述

实验三:服务自动部署示例

要求:
执行脚本 lamp.sh
脚本执行后部署好论坛,并设定 apache 的网络接口为 8080
脚本内容:
这里写图片描述这里写图片描述

实验四:自动登陆脚本

要求:
执行 auto_ssh.sh 172.25.254.100 westos
172.25.254.100 为 ip
westos 为密码
执行脚本后自动登陆 172.25.254.100 并保持登陆

[root@desktop mnt]# vim ssh_auto.exp   ##编辑脚本
[root@desktop mnt]# expect /mnt/ssh_auto.exp 172.25.254.71 westos   ##执行

脚本内容:
这里写图片描述
这里写图片描述

实验五:批处理脚本

要求:
检测教室中开启的所有主机,并抓取所有主机的值机名称和 ip
的对应列表,把列表保存在 /mnt/ip_host.list 文件中

[root@desktop mnt]# vim host.sh   ##编辑脚本
[root@desktop mnt]# sh host.sh 
[root@desktop mnt]# cat ip_host.list    ##查看ip

脚本内容:
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/le_anny/article/details/80835163