shell基础之多功能nginx(安装、重启、停止等)
时间:2019-08-06
本文章向大家介绍shell基础之多功能nginx(安装、重启、停止等),主要包括shell基础之多功能nginx(安装、重启、停止等)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 #!/bin/bash 2 #要求:检查本机是否已编译安装nginx,检查本机是否存在nginx源码包,编译安装nginx,实现开启、停止、查看状态等功能 3 #检查是否已编译安装nginx 4 while : 5 do 6 read -p "本机是否安装nginx?yes查看nginx状态,no跳转至安装nginx(yes/no):" wh_do 7 if [ "$wh_do" == "no" ];then 8 while : 9 do 10 read -p "是否确定编译安装nginx(yes/no)no表示退出脚本:" YON 11 if [ "$YON" == "yes" ];then 12 check_install=$(ls /usr/local |grep nginx) 13 if [ -n "$check_install" ];then 14 echo "已经编译安装nginx" 15 break 16 else 17 #配置本地yum源 18 mount_point=$(ls / |grep local_dvd) 19 if [ -z "$mount_point" ];then 20 mkdir /local_dvd 21 mount /dev/cdrom /local_dvd 22 echo "/dev/cdrom /local_dvd iso9660 defaults 0 0 " >> /etc/fstab 23 rm -rf /etc/yum.repos.d/*.repo 24 echo "[local] 25 name=local 26 baseurl=file:///local_dvd 27 enabled=1 28 gpgcheck=0 " >> /etc/yum.repos.d/local.repo 29 fi 30 check_have=$(find / -name nginx-*.tar.gz |head -n 1) 31 if [ -z "$check_have" ];then 32 yum -y install wget 33 wget http://nginx.org/download/nginx-1.16.0.tar.gz 34 fi 35 check_have=$(find / -name nginx-*.tar.gz |head -n 1) 36 #检查防火墙环境 37 se_status=$(getenforce) 38 if [ "$se_status"=="Enforcing" ];then 39 setenforce 0 40 sed -i "s/=Enforcing/=Disabled/g" /etc/selinux/config 41 fi 42 systemctl start firewalld 43 systemctl enable firewalld 44 #安装依赖包 45 yum -y install gcc-* zlib-* pcre-* 46 #解压nginx包 47 tar xzf $check_have -C /root/ 48 #编译安装nginx 49 cd /root/nginx-* 50 pwd 51 ./configure && make && make install 52 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 53 fi 54 if `firewall-cmd --list-port |grep 80/tcp` 55 then 56 break 57 else 58 firewall-cmd --add-port=80/tcp 59 firewall-cmd --add-port=80/tcp --permanent 60 fi 61 break 62 elif [ "$YON" == "no" ];then 63 echo "退出脚本" 64 exit 65 else 66 echo "请输入正确的内容" 67 continue 68 fi 69 done 70 #nginx启动、停止、查看状态 71 elif [ "$wh_do" == "yes" ];then 72 check_install=$(ls /usr/local |grep nginx) 73 if [ -z "$check_install" ];then 74 echo "您未编译安装nginx,请先安装" 75 continue 76 fi 77 while : 78 do 79 read -p "请输入你要执行操作的序号(0-退出;1-开启;2-停止;3-重启;4-查看状态)" NUM 80 case $NUM in 81 0) 82 echo "退出脚本" 83 exit 84 ;; 85 1) 86 PID=$(ps aux |grep nginx |grep master |awk '{print $2}') 87 if [ -z "$PID" ];then 88 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 89 echo "启动nginx" 90 else 91 echo "nginx已经启动" 92 fi 93 ;; 94 2) 95 PID=$(ps aux |grep nginx |grep master |awk '{print $2}') 96 if [ -z "$PID" ];then 97 echo "nginx已经停止" 98 else 99 echo "停止nginx" 100 kill $PID 101 fi 102 ;; 103 3) 104 PID=$(ps aux |grep nginx |grep master |awk '{print $2}') 105 if [ -n "$PID" ];then 106 kill $PID 107 fi 108 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 109 echo "重启nginx" 110 ;; 111 4) 112 PID=`ps aux |grep nginx |grep master |awk '{print $2}'` 113 if [ -z "$PID" ];then 114 echo "nginx已停止" 115 else 116 echo "nginx已开启" 117 fi 118 ;; 119 *) 120 echo "请输入正确的序号" 121 ;; 122 esac 123 done 124 else 125 echo "请输入正确的选项" 126 continue 127 fi 128 done
原文地址:https://www.cnblogs.com/renyz/p/11311709.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法