您的位置:首页 > 运维架构 > Shell

shell完成简单的apache自动部署

2017-11-12 15:09 344 查看
说明:环境是centos6.5 ip是172.24.10.107 目的是为了学习shell

这次学到的内容:判断安装包是否存在
if [ `rpm -qa |grep httpd |wc -l` -ne 0  ];then
这个是存在怎么样
else
不存在怎么样
fi


首先看下:

rpm -qa |grep httpd
看下如果安装了返回的结果:
[root@China shell]# rpm -qa |grep httpd
httpd-devel-2.2.15-60.el6.centos.6.x86_64
httpd-tools-2.2.15-60.el6.centos.6.x86_64
httpd-2.2.15-60.el6.centos.6.x86_64
httpd-manual-2.2.15-60.el6.centos.6.noarch
如果加上wc -l 呢
[root@China shell]#  rpm -qa |grep httpd |wc -l
4
返回一个4,就说明安装了4个安装包,也就说明这个软件安装了,-ne的意思是不等于,
在这的意思就是所4不等0,所以软件安装了。
完整的程序

#!/bin/bash
#by-duwentao
#2017-11-12

html="/var/www/html"
ip=127.24.10.107

if [ `rpm -qa |grep httpd |wc -l` -ne 0  ];then
yum remove httpd* -y
yum install httpd* -y
else
yum install httpd* -y
fi

if [ ! -f $html/index.html ];then
mkdir -p $html
touch $html/index.html
else
rm -rf $html
mkdir -p $html
touch $html/index.html
chmod 705 $html/index.html
fi

cat >>$html/index.html<< +END+
this is $ip server
+END+

echo "ServerName $ip:80" >> /etc/httpd/conf/httpd.conf

service httpd restart
执行效果:
欢迎关注我微信公众号,与我一起学习

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell