当然这个博客原代码是转载大神的。。。

自动安装Nginx脚本,采用case方式,选择方式,也可以根据实际需求改成自己想要的脚本mynginx.sh

  1. #!/bin/sh
  2. ###nginx install shell
  3. ###wugk 2012-07-14
  4. ###PATH DEFINE
  5. SOFT_PATH=/data/soft/
  6. NGINX_FILE=nginx-1.2.0.tar.gz
  7. DOWN_PATH=http://nginx.org/download/
  8. if[ $UID -ne 0 ];then
  9. echo This script must use administrator or root user ,please exit!
  10. sleep 2
  11. exit 0
  12. fi
  13. if[ ! -d $SOFT_PATH ];then
  14. mkdir -p $SOFT_PATH
  15. fi
  16. download ()
  17. {
  18. cd $SOFT_PATH ;wget $DOWN_PATH/$NGINX_FILE
  19. }
  20. install ()
  21. {
  22. yum install pcre-devel -y
  23. cd $SOFT_PATH ;tar xzf $NGINX_FILE ;cd nginx-1.2.0/ &&./configure –prefix=/usr/local/nginx/ –with-http_stub_status_module –with-http_ssl_module
  24. [ $? -eq 0 ]&&make &&make install   #[ ]条件判断用的可以
  25. }
  26. start ()
  27. {
  28. lsof -i :80[ $? -ne 0 ]&&/usr/local/nginx/sbin/nginx   #lsof -i :80 //显示所有打开80端口的进程
  29. }
  30. stop ()
  31. {
  32. ps -ef |grep nginx |grep -v grep |awk ‘{print $2}’|xargs kill -9  #本文最nice的一个就是用了xargs这个命令,将上一个命令的输出作为下一个命令的参数
  33. }
  34. exit ()
  35. {
  36. echo $? ;exit
  37. }
  38. ###case menu #####
  39. case $1 in
  40. download )
  41. download
  42. ;;
  43. install )
  44. install
  45. ;;
  46. start )
  47. start
  48. ;;
  49. stop )
  50. stop
  51. ;;
  52. * )
  53. echo “USAGE:$0 {download or install or start or stop}”
  54. exit
  55. esac

脚本执行:

./mynginx.sh download

./mynginx.sh install

./mynginx.sh start

./mynginx.sh stop

下文为apache shell脚本: 1 #!/bin/sh 2

 #by z.jason --
#using install apache if [ $UID -ne ]; then
echo " you must are root or administrator,please exit ! "
sleep
exit
fi yum_download ()
{
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo # update yum
} install ()
{
yum -y install httpd
} start ()
{
lsof -i : if [ $? -ne ];then service httpd start else echo "apache is running !" fi
#当然可以一句写成 lsof -i :80;[ $? -ne 0 ]&&service httpd start||echo "apache is running ! "就是如果lsof没有输出就会返回1,也就是失败的意思。
} stop ()
{ ps -ef |grep httpd |grep -v grep |awk ‘{print $}’|xargs kill -
#service httpd stop
} restart ()
{
servcie httpd restart
} case $ in
yum_download )
yum_download
;; install )
install
;; start )
start
;; stop )
stop
;; restart )
restart
;; * )
echo "please input yum_download or install or start or stop or restart"
esac

脚本执行:

./myapache.sh yum_download

./myapache.sh install

./myapache.sh start

./myapache.sh stop

其实两个代码的区别还是有的,前者使用源码安装,而后者使用yum安装,个人比较喜欢用yum,因为yum简单而且不用去处理软件的依赖关系。

linux shell每天一阅 -- 安装nginx以及apache的更多相关文章

  1. 在Linux和Windows系统上安装Nginx服务器的教程

    在Linux和Windows系统上安装Nginx服务器的教程  1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RP ...

  2. linux软件管理之------编译安装nginx服务器并手动编写自动化运行脚本

    红帽系列的 linux软件管理分为三类:1. rpm 安装软件.2. yum 安装软件.3. 源码包编译安装.前面两种会在相关专题给出详细讲解.源码包的编译安装是非常关键的,我们知道linux的相关版 ...

  3. linux入门常用指令2.安装nginx

    下载nginx包 nginx-1.10.3.tar.gz 解压 [root@localhost src]# tar -zxvf nginx-1.10.3.tar.gz [root@localhost ...

  4. Linux和Windows环境下安装Nginx

    Nginx的安装 windows环境下安装Nginx 安装 Nginx 的下载地址如下: http://nginx.org/en/download.html 选择时尽量选择 Stable 稳定版本,点 ...

  5. Linux系统 - 源码编译安装Nginx

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

  6. Linux的CentOS上如何安装nginx

    1. 安装nginx前,首先要装好gcc和g++环境: 2. 在centOS上装nginx,需要PCRE.zlib和ssl的支持,出ssl外其他都需要从其官网上下载好,上传至服务器: 3. 接着将上传 ...

  7. Linux RHEL7(CentOS7源) 安装 Nginx

    安装步骤 1.添加 Nginx 源地址 CentOS7 默认没有提供 Nginx 的源,但 Nginx 自己提供了 sudo rpm -Uvh http://nginx.org/packages/ce ...

  8. linux服务基础之编译安装nginx

    nginx源码下载地址: http://nginx.org/download/nginx-1.16.0.tar.gz //根据需要下载其他版本 1. 下载nginx # wget http://ngi ...

  9. shell基础之编译安装nginx

    本节新学知识:if 判断语句 1 #!/bin/bash 2 #检查环境 3 SESTATE=`getenforce` 4 if [ $SESTATE != "Disabled" ...

随机推荐

  1. Python基础(8) - 模块

    Python 模块的物理形式就是文件:一个文件对应一个模块.文件名就是模块名+.py 模块定义了自己独有的命名空间.在其定义的属性,函数,类都隶属于该空间. 通过import关键字我们可以导入模块: ...

  2. h5移动端设置键盘搜索

    点击键盘上的搜索按钮实现页面跳转 <form action="#list?goods_title={{message?message:''}}" @submit.preven ...

  3. 项目管理系列--谷歌的code review

    Google 开源项目风格指南 (中文版) 在线文档托管在 ReadTheDocs : 在线阅读最新版本 中文风格指南 GitHub 托管地址:zh-google-styleguide 声明. 本项目 ...

  4. 【request获取用户请求ip】

    1:request.getRemoteAddr() 2:如果请求的客户端使用了nginx 等反向代理发送请求的时候:就不能获取到真是的ip地址了:如:将http://192.168.1.110:204 ...

  5. .NET 中使用阿里云短信的 API 接口

    小弟初来乍到,这也是我的第一篇文章,写的不好的地方还望指正.谢谢各位! 引言 短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码.短信 ...

  6. .Net Core GB2312编码问题

    1.今天抓取了一个网页的源代码.发现中文是乱码的,马上第一反应是编码问题..... 2.仔细一看基于WebClient写的代码,还真的是没有设置编码... /// <summary> // ...

  7. js实现栈

    栈是一种先进后出的特殊线性表结构,存储上分链式存储和顺序存储两种方式 链式存储: function LinkedStack() { let Node = function (ele) { this.e ...

  8. SpringCloud实战之初级入门(一)— eureka注册中心

    目录 写在前面 1.资料目录 2.环境介绍 3.eureka注册中心 3.1 创建工程 3.2 启动工程 5.eureka注册中心集群高可用 6.结语 7.一点点重要的事情 写在前面 我在软件行业浸泡 ...

  9. UNIX 5种I/O模型

    Unix 5 I/O模型 I/O操作分为两步: (1)先将数据从 存储介质 (磁盘或者网络等)拷贝到 内核缓冲区,此时称为数据准备好,可以被用户读取. (2)由用户应用程序拷贝内核缓冲区数据 到用户缓 ...

  10. VBA将指定Excel表数据批量生成到另一个Excel表中,每个sheet表一行数据

    Sub AutoInputValNewExcel() Dim sh1, sh2 As Worksheet Dim ws1, ws2 As Workbook ) ) ).Sheets() iRows = ...