2.2.2 if 案例实践
学习目标
这一节,我们从 服务管理、堡垒机登录、小结 三个方面来学习。
服务管理
案例需求
要求脚本执行需要有参数,通过传入参数来实现不同的功能。参数和功能详情如下:参数 执行效果start 服务启动中...stop 服务关闭中...restart 服务重启中...* 脚本 X.sh 使用方式 /bin/bash X.sh [ start|stop|restart ]
脚本内容
[root@localhost ~]# cat service_manager_if.sh
#!/bin/bash
# 功能:定制服务管理的功能
# 版本:v0.1
# 作者:书记
# 联系:www.superopsmsb.com# 定制普通变量
service_ops="$1"# 脚本基本判断
if [ $# -ne 1 ]
then echo -e "\e[31m$0 脚本的使用方式: $0 [ start | stop | restart ]\e[0m"exit
fi# 脚本内容的判断
if [ "${service_ops}" == "start" ]
thenecho -e "\e[31m服务启动中...\e[0m"
elif [ "${service_ops}" == "stop" ]
thenecho -e "\e[31m服务关闭中...\e[0m"
elif [ "${service_ops}" == "restart" ]
thenecho -e "\e[31m服务重启中...\e[0m"
elseecho -e "\e[31m$0 脚本的使用方式: $0 [ start | stop | restart ]\e[0m"
fi
脚本执行效果
[root@localhost ~]# /bin/bash service_manager_if.sh
service_manager_if.sh 脚本的使用方式: service_manager_if.sh [ start | stop | restart ]
[root@localhost ~]# /bin/bash service_manager_if.sh start
服务启动中...
[root@localhost ~]# /bin/bash service_manager_if.sh stop
服务关闭中...
[root@localhost ~]# /bin/bash service_manager_if.sh restart
服务重启中...
[root@localhost ~]# /bin/bash service_manager_if.sh xxx
service_manager_if.sh 脚本的使用方式: service_manager_if.sh [ start | stop | restart ]
堡垒机登录
需求
在之前的堡垒机功能基础上,扩充条件判断效果
脚本内容
[root@localhost ~]# cat simple_jumpserver_if.sh
#!/bin/bash
# 功能:定制堡垒机的展示页面
# 版本:v0.4
# 作者:书记
# 联系:www.superopsmsb.com# 定制普通变量
login_user='root'
login_pass='123456'# 堡垒机的信息提示
echo -e "\e[31m \t\t 欢迎使用堡垒机"
echo -e "\e[32m-----------请选择你要登录的远程主机-----------1: 10.0.0.14 (nginx)2: 10.0.0.15 (tomcat)3: 10.0.0.19 (apache)q: 使用本地主机
----------------------------------------------\033[0m"# 由于暂时没有学习条件判断,所以暂时选择 q
read -p "请输入您要选择的远程主机编号: " host_index
read -p "请输入登录本地主机的用户名: " user
read -s -p "请输入登录本地主机的密码: " password
echo
# 远程连接主机
if [[ ${user} == ${login_user} && ${password} == ${login_pass} ]]
thenecho -e "\e[31m主机登录验证成功\e[0m"
elseecho -e "\e[31m您输入的用户名或密码有误\e[0m"
fi
脚本执行效果
[root@localhost ~]# /bin/bash simple_jumpserver_if.sh欢迎使用堡垒机
-----------请选择你要登录的远程主机-----------1: 10.0.0.14 (nginx)2: 10.0.0.15 (tomcat)3: 10.0.0.19 (apache)q: 使用本地主机
----------------------------------------------
请输入您要选择的远程主机编号: q
请输入登录本地主机的用户名: root
请输入登录本地主机的密码:
主机登录验证成功
[root@localhost ~]# /bin/bash simple_jumpserver_if.sh欢迎使用堡垒机
-----------请选择你要登录的远程主机-----------1: 10.0.0.14 (nginx)2: 10.0.0.15 (tomcat)3: 10.0.0.19 (apache)q: 使用本地主机
----------------------------------------------
请输入您要选择的远程主机编号: q
请输入登录本地主机的用户名: python
请输入登录本地主机的密码:
您输入的用户名或密码有误
小结