多级菜单系统安装维护shell脚本实现企业级案例

演示效果:

1、一级菜单

2、二级菜单

3、执行操作

脚本参考:

#!/bin/bash#authorlic(oldboylinuxstudent)#date1304DISK_NO=”/dev/sda1″NGINX_DIR=”/usr/local/tdoa/nginx/sbin/nginx”MYSQL_DIR=”/usr/local/tdoa/mysql/bin/mysqld_safe”SERVER1=”WEB”SERVER2=”MYSQL”SERVER1_START=”/usr/local/tdoa/nginx/sbin/nginx”SERVER1_STOP=”kill-QUIT`cat/usr/local/tdoa/logs/nginx/nginx.pid`”SERVER1_RESTART=”kill-HUP`cat/usr/local/tdoa/logs/nginx/nginx.pid`”SERVER2_START=”/etc/init.d/mysqlstart”SERVER2_STOP=”/etc/init.d/mysqlstop”SERVER2_RESTART=”/etc/init.d/mysqlrestart”#dateDATE=`date+”%y-%m-%d%H:%M:%S”`#ipIPADDR=`ifconfigeth0|grep’inetaddr’|sed’s/^.*addr://g’|sed’s/Bcast:.*$//g’`#hostnameHOSTNAME=`hostname-s`#userUSER=`whoami`#disk_checkDISK_SDA=`df-h|grep$DISK_NO|awk'{print$5}’`#cpu_average_checkcpu_uptime=`cat/proc/loadavg|cut-c1-14`#process_checkfunctionprocess_check(){fordirin$NGINX_DIR$MYSQL_DIRdoprocess_count=$(ps-ef|grep”$dir”|grep-vgrep|wc-l)forserviceinnginxmysqldoecho”$dir”|grep-q”$service”if[$?-eq0]thenif[$process_count-eq0]thenecho”$service…………………..[NOTRUN]”elseecho”$service…………………..[RUNNING]”continuefifidonedone}declareflag=0clearwhile[“$flag”-eq0]doecho”========================================”process_checkecho”========================================”cat<<EOF|———–SystemInfomation———–|DATE:$DATE|HOSTNAME:$HOSTNAME|USER:$USER|IP:$IPADDR|DISK_USED:$DISK_SDA|CPU_AVERAGE:$cpu_uptime—————————————-|****PleaseEnterYourChoice:[0-5]****|—————————————-(1)Configure$SERVER1Service(2)Configure$SERVER2Service(3)ConfigureNETWORKEService(4)ChangePasswd(5)Logs(0)QuitEOFread-p”Pleaseenteryourchoice[0-5]:”inputcase$inputin#webservice1)clearwhile[“$flag”-eq0]docat<<EOF—————————————-|****PleaseEnterYourChoice:[0-3]****|—————————————-(1)Start$SERVER1Service(2)Stop$SERVER1Service(3)ReStart$SERVER1Service(0)BackEOFread-p”Pleaseenteryourchoice[0-3]:”input1case$input1in1)echo-e”\n>>>>>>>>>>>$DATEStart$SERVER1″>>/log.txt$SERVER1_START2>>/log.txtif[$?==0];thenecho”Start$SERVER1………………………………………………[OK]”elseecho”Start$SERVER1………………………………………………[FAILED]”fisleep5clear;;2)echo-e”\n>>>>>>>>>>>$DATEStop$SERVER1″>>/log.txt$SERVER1_STOP2>>/log.txtif[$?==0];thenecho”Stop$SERVER1……………………………………………….[OK]”elseecho”Stop$SERVER1……………………………………………….[FAILED]”fisleep5clear;;3)echo-e”\n>>>>>>>>>>>$DATEReStart$SERVER1″>>/log.txt/usr/local/tdoa/php/sbin/php-fpmrestart2>>/log.txt$SERVER1_RESTART2>>/log.txtif[$?==0];thenecho”Restart$SERVER1…………………………………………….[OK]”elseecho”Restart$SERVER1…………………………………………….[FAILED]”fisleep5clear;;0)clearbreak;;*)echo”———————————-“echo”|Warning!!!|”echo”|PleaseEnterRightChoice!|”echo”———————————-“foriin`seq-w10-11`doecho-ne”\b\b$i”;sleep1;doneclear;;esacdone;;#mysqlservice2)clearwhile[“$flag”-eq0]docat<<EOF—————————————-|****PleaseEnterYourChoice:[0-3]****|—————————————-(1)Start$SERVER2Service(2)Stop$SERVER2Service(3)ReStart$SERVER2Service(0)BackEOFread-p”PleaseenteryourChoice[0-3]:”input2case$input2in1)echo-e”\n>>>>>>>>>>>$DATEStart$SERVER2″>>/log.txt$SERVER2_START2>>/log.txtif[$?==0];thenecho”Start$SERVER2………………………………………………[OK]”elseecho”Start$SERVER2………………………………………………[FAILED]”fisleep5clear;;2)echo-e”\n>>>>>>>>>>>$DATEStop$SERVER2″>>/log.txt$SERVER2_STOP2>>/log.txtif[$?==0];thenecho”Stop$SERVER2……………………………………………….[OK]”elseecho”Stop$SERVER2……………………………………………….[FAILED]”fisleep5clear;;3)echo-e”\n>>>>>>>>>>>$DATEReStart$SERVER2″>>/log.txt$SERVER2_RESTART2>>/log.txtif[$?==0];thenecho”Restart$SERVER2…………………………………………….[OK]”elseecho”Restart$SERVER2…………………………………………….[FAILED]”fisleep5clear;;0)clearbreak;;*)echo”———————————-“echo”|Warning!!!|”echo”|PleaseEnterRightChoice!|”echo”———————————-“foriin`seq-w10-11`doecho-ne”\b\b$i”;sleep1;doneclear;;esacdone;;#网络服务3)clearwhile[“$flag”-eq0]docat<<EOF—————————————-|****PleaseEnterYourChoice:[0-3]****|—————————————-(1)ReStartNETWORKService(2)ConfigureNETWORKService(0)BackEOFread-p”PleaseenteryourChoice[0-3]:”input3case$input3in1)echo-e”\n>>>>>>>>>>>$DATEReStartNetwork”>>/log.txt/etc/init.d/networkrestart2>>/log.txtif[$?==0];thenecho”RestartNetwork……………………………………………..[OK]”elseecho”RestartNetwork……………………………………………..[FAILED]”fisleep5clear;;2)clearsetupclear;;0)clearbreak;;*)echo”———————————-“echo”|Warning!!!|”echo”|PleaseEnterRightChoice!|”echo”———————————-“foriin`seq-w10-11`doecho-ne”\b\b$i”;sleep1;doneclear;;esacdone;;4)clearwhile[“$flag”-eq0]docat<<EOF—————————————-|****PleaseEnterYourChoice:[0-3]****|—————————————-(1)ChangeROOTPasswd(2)ChangeSambaPasswd(0)BackEOFread-p”PleaseenteryourChoice[0-3]:”input5case$input5in1)echo-e”\n>>>>>>>>>>>$DATEChangeSystemAdministertorRootPasswd\n”>>/log.txtpasswdroot2>>/log.txtif[$?==0];thenecho”ChangeROOTPasswd……………………………………………..[OK]”elseecho”ChangeROOTPasswd……………………………………………..[FAILED]”fisleep5clear;;2)echo-e”\n>>>>>>>>>>>$DATEChangeSambaPasswd”>>/log.txtsmbpasswd-atdoa2>>/log.txtif[$?==0];thenecho”ChangeSambaPasswd……………………………………………..[OK]”elseecho”ChangeSambaPasswd……………………………………………..[FAILED]”fisleep5clear;;0)clearbreak;;*)echo”———————————-“echo”|Warning!!!|”echo”|PleaseEnterRightChoice!|”echo”———————————-“sleep8clear;;esacdone;;5)clearecho”++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++”echo”|”less/log.txtecho”|”echo”++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++”;;0)clearexit0;;*)echo”———————————-“echo”|Warning!!!|”echo”|PleaseEnterRightChoice!|”echo”———————————-“foriin`seq-w10-11`doecho-ne”\b\b$i”;sleep1;doneclear;;esacdone

本文出自 “老男孩linux运维” 博客,请务必保留此出处

,我喜欢旅游,喜欢离开自己过腻歪的城市,

多级菜单系统安装维护shell脚本实现企业级案例

相关文章:

你感兴趣的文章:

标签云: