<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DevOps技术分享 &#187; SHELL</title>
	<atom:link href="http://www.showerlee.com/archives/category/programming/shell/feed" rel="self" type="application/rss+xml" />
	<link>http://www.showerlee.com</link>
	<description>与你共同学习运维开发</description>
	<lastBuildDate>Mon, 19 Oct 2020 05:51:41 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.6</generator>
		<item>
		<title>[SHELL] WEB页面监控脚本</title>
		<link>http://www.showerlee.com/archives/1187</link>
		<comments>http://www.showerlee.com/archives/1187#comments</comments>
		<pubDate>Wed, 04 Jun 2014 07:31:50 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[SHELL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=1187</guid>
		<description><![CDATA[&#160; &#160; 新的博客站终于备案并迁移成功 http://www.showerlee.com &#038; [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>&nbsp; &nbsp; 新的博客站终于备案并迁移成功 <a href="http://www.showerlee.com" rel="nofollow">http://www.showerlee.com</a></p>
<p>&nbsp; &nbsp; 有需要的小伙伴可以站内向我咨询,绝对免费哦.</p>
<p>&nbsp; &nbsp; 51CTO同时作为我的备份博客站同步发布我的最新博文,欢迎大家的访问.</p>
<p>&nbsp; &nbsp; 最近刚好需要测试一下新建站的稳定性,所以写了个<a href="http://www.showerlee.com/archives/tag/shell" title="查看SHELL中的全部文章" class="tag_link">SHELL</a>脚本放到本机(最近换了mac本),能够实时查看你需要监控的WEB页面状态,并发送到指定邮箱.</p>
<p>&nbsp; &nbsp; 这里赞一下OS X自带有crontab计划任务,可以直接在本机测试脚本啦^_^</p>
<p>&nbsp;&nbsp;</p>
<p># vi check_web_alive.sh</p>
<p>
	---------------------------------------------------------------------
</p>
<p>
	#!/bin/bash
</p>
<p>
	<span style="line-height:1.5;">PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin</span>
</p>
<p>
	<span style="line-height:1.5;">export PATH</span>
</p>
<p>
	
</p>
<p>
	# define url
</p>
<p>
	<span style="line-height:1.5;">WEB_URL=("http://www.example.com" "http://www1.example.com" "http://www2.example.com")</span>
</p>
<p>
	<span style="line-height:1.5;"><br />
</span>
</p>
<p>
	# check network
</p>
<p>
	<span style="line-height:1.5;">NET_ALIVE=$(ping -c 5 8.8.8.8 |grep 'received'|awk 'BEGIN {FS=","} {print $2}'|awk '{print $1</span><span style="line-height:1.5;">}')</span>
</p>
<p>
	
</p>
<p>
	if [ $NET_ALIVE == 0 ]; then
</p>
<p>&nbsp; &nbsp; echo "Network is not active,please check your network configuration!"</p>
<p>
	&nbsp; &nbsp; exit 0
</p>
<p>
	fi
</p>
<p>
	
</p>
<p>
	# check url
</p>
<p>
	<span style="line-height:1.5;">for((i=0; i!=${#WEB_URL[@]}; ++i))</span>
</p>
<p>
	<span style="line-height:1.5;">{</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; ALIVE=$(curl -o /dev/null -s -m 10 -connect-timeout 10 -w %{http_code} ${WEB_URL[i]} |grep"000000")</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; if [ "$ALIVE" == "000000" ]; then</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; &nbsp; echo "'${WEB_URL[i]}' can not be open,please check!" | mail -s "Website Notification to ${WEB_URL[i]}" <a href="mailto:yourname@example.com">yourname@example.com</a></span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; &nbsp; echo "failed"</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; else</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; &nbsp; echo "'${WEB_URL[i]}' is OK!"</span>
</p>
<p>
	<span style="line-height:1.5;">&nbsp; fi</span>
</p>
<p>
	<span style="line-height:1.5;">}</span>
</p>
<p>---------------------------------------------------------------------</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/1187">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL] WEB页面监控脚本" href="http://www.showerlee.com/archives/1187">http://www.showerlee.com/archives/1187</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/1187/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL] LINUX流量监控脚本</title>
		<link>http://www.showerlee.com/archives/1099</link>
		<comments>http://www.showerlee.com/archives/1099#comments</comments>
		<pubDate>Wed, 26 Feb 2014 05:12:30 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[SHELL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=1099</guid>
		<description><![CDATA[最近比较忙,好久没更新博客了,今天刚好不忙写了一个流量监控脚本. 测试在centos下已通过,有需要的朋友可以 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近比较忙,好久没更新博客了,今天刚好不忙写了一个流量监控脚本.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	测试在centos下已通过,有需要的朋友可以试试,有BUG或者需要添加其他功能话可以给我留言.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/traffic_monitor.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		#!/bin/bash
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin;
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export PATH
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		function traffic_monitor {
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; # 系统版本
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; OS_NAME=$(sed -n '1p' /etc/issue)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; # 网口名
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; eth=$1
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; #判断网卡存在与否,不存在则退出
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; if [ ! -d /sys/class/net/$eth ];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; echo -e "Network-Interface Not Found"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; echo -e "You system have network-interface:\n`ls /sys/class/net`"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; exit 5
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; while [ "1" ]
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; do
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 状态
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; STATUS="fine"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 获取当前时刻网口接收与发送的流量
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; RXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; TXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 获取1秒后网口接收与发送的流量
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; sleep 1
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; RXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; TXnext=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; clear
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 获取这1秒钟实际的进出流量
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; RX=$((${RXnext}-${RXpre}))
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; TX=$((${TXnext}-${TXpre}))
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 判断接收流量如果大于MB数量级则显示MB单位,否则显示KB数量级
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; if [[ $RX -lt 1024 ]];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; RX="${RX}B/s"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; elif [[ $RX -gt 1048576 ]];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; RX=$(echo $RX | awk '{print $1/1048576 "MB/s"}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; $STATUS="busy"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; else
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; RX=$(echo $RX | awk '{print $1/1024 "KB/s"}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 判断发送流量如果大于MB数量级则显示MB单位,否则显示KB数量级
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; if [[ $TX -lt 1024 ]];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; TX="${TX}B/s"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; elif [[ $TX -gt 1048576 ]];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; TX=$(echo $TX | awk '{print $1/1048576 "MB/s"}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; else
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; TX=$(echo $TX | awk '{print $1/1024 "KB/s"}')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 打印信息
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "==================================="
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Welcome to Traffic_Monitor stage"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "version 1.0"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Since 2014.2.26"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Created by showerlee"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "BLOG: <a href="http://www.showerlee.com" rel="nofollow">http://www.showerlee.com</a>"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "==================================="
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "System: $OS_NAME"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Date: &nbsp; `date +%F`"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Time: &nbsp; `date +%k:%M:%S`"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Port: &nbsp; $1"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Status: $STATUS"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e &nbsp;" \t &nbsp; &nbsp; RX \tTX"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo "------------------------------"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 打印实时流量
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "$eth \t $RX &nbsp; $TX "
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo "------------------------------"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; # 退出信息
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; echo -e "Press 'Ctrl+C' to exit"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; done
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		}
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 判断执行参数
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [[ -n "$1" ]];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; # 执行函数
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; traffic_monitor $1
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		else
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; echo -e "None parameter,please add system netport after run the script! \nExample: 'sh traffic_monitor eth0'"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sh traffic_monitor.sh eth0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如图:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p><a href="http://www.showerlee.com/wp-content/uploads/2014/02/12.jpg"><img onerror="javascript:this.src='http://www.showerlee.com/wp-content/themes/BYMT/images/images_error.jpg'" src="http://www.showerlee.com/wp-content/uploads/2014/02/12.jpg" alt="1" width="584" height="364" class="alignnone size-full wp-image-1100" /></a></p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/1099">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL] LINUX流量监控脚本" href="http://www.showerlee.com/archives/1099">http://www.showerlee.com/archives/1099</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/1099/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL] LNMP一键安装脚本设计(v1.0)</title>
		<link>http://www.showerlee.com/archives/1007</link>
		<comments>http://www.showerlee.com/archives/1007#comments</comments>
		<pubDate>Mon, 02 Dec 2013 10:22:49 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[SHELL]]></category>
		<category><![CDATA[lnmp]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=1007</guid>
		<description><![CDATA[周末奋战了2天,终于把LNMP的centos和ubuntu双系统的一键安装脚本搞定,晚上可以好好休息休息了.  [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	周末奋战了2天,终于把LNMP的centos和ubuntu双系统的一键安装脚本搞定,晚上可以好好休息休息了.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	本版本的测试环境为Ubuntu server 12.10和Centos6.3的x86和x64
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	欢迎前来测试...
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	程序下载地址:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Onekey_LNMP_v1.0:&nbsp;<a href="http://www.showerlee.com/down/Onekey_lnmp_v1.0.zip" target="_blank">http://www.showerlee.com/down/Onekey_lnmp_v1.0.zip</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	以下为部分脚本内容:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat install_lamp.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# LAMP目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	DEFAULT_DIR=$(pwd)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG_DIR=$(pwd)/log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	INIT_DIR=/etc/init.d
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	MYSQL_DIR=/usr/local/mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	NGINX_DIR=/usr/local/nginx
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PHP_DIR=/usr/local/php5
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/nginx.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "=================================================================
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Welcome to Onekey LNMP installation,created by showerlee.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Version:1.0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;QQ:381362772
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;BLOG:<a href="http://www.showerlee.com" rel="nofollow">http://www.showerlee.com</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Since 2013.12.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	==================================================================
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Select option for your choice.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;1 install all service(nginx + php + mysql)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;2 install nginx+php
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;3 install nginx
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;4 install mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;5 quit"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sleep 0.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please Input 1,2,3,4,5: " SERVER_ID
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [[ $SERVER_ID == 1 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; nginx_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 2 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; nginx_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 3 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; nginx_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 4 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;exit
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# check the system environment
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function check_env_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/check_env_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "check the system environment..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断是否为root用户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $UID != 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "You must be root to run the install script."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装开发包(使用默认CENTOS更新源):
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Dependency package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;OS_NAME=$(sed -n '1p' /etc/issue |awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;yum -y install lsof wget gcc gcc-c++ ncurses ncurses-devel cmake \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make perl bison openssl openssl-devel pcre-devel gcc* libxml2 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;libxml2-devel curl-devel libjpeg* libpng* freetype* zlib-devel
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;apt-get update
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;apt-get install -y &nbsp;cmake gcc g++ make autoconf libltdl-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libgd2-xpm-dev libfreetype6 libfreetype6-dev libxml2-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libjpeg-dev libpng12-dev libcurl4-openssl-dev libssl-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	patch libmcrypt-dev libmhash-dev libncurses5-dev openssl \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libreadline-dev bzip2 libcap-dev ntpdate diffutils \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	exim4 iptables unzip sudo libpcre3 libpcre3-dev
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭相关服务和SELINUX
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Stop useless service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables -F &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;service iptables save 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;setenforce 0 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;chkconfig httpd off &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;chkconfig mysql off &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;service httpd stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;service mysql stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables -F &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables-save &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;update-rc.d -f nginx remove &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;update-rc.d -f mysql remove &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;$INIT_DIR/nginx stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;$INIT_DIR/mysql stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断能否访问公网
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 8.8.8.8 &gt;&gt; /etc/resolv.conf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Check your Networking..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;NET_ALIVE=$(ping 8.8.8.8 -c 5 |grep 'received'|awk 'BEGIN {FS=","} {print $2}'|awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $NET_ALIVE == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is not active,please check your network configuration!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is active,continue.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 同步时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "synchronize time..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ntpdate tiger.sina.com.cn &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;hwclock -w
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "finish check..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/nginx.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nginx install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function nginx_ins { &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/nginx_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Nginx service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装前的初始配置工作：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "The initial configuration before installation..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 添加nginx用户和用户组
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;groupadd nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;useradd -g nginx -s /bin/false -M nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# nginx安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "make install nginx package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -zxvf nginx-1.4.1.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd nginx-1.4.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; ./configure --prefix=$NGINX_DIR --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock &nbsp;--user=nginx --group=nginx --with-http_ssl_module --with-http_dav_module --with-http_flv_module --with-http_realip_module --with-http_gzip_static_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-debug --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $NGINX_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$NGINX_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# nginx配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 创建缓存目录：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p /var/tmp/nginx/client &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;OS_NAME=$(sed -n '1p' /etc/issue |awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;# 创建nginx启动脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e $INIT_DIR/nginx ] &amp;&amp; mv $INIT_DIR/nginx $INIT_DIR/nginx.old &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/nginx $INIT_DIR/ &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 755 $INIT_DIR/nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --add nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动nginx并设置开机启动 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "start nginx service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service nginx start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig nginx on &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 创建nginx启动脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/nginx_ubuntu $INIT_DIR/nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 755 $INIT_DIR/nginx &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;update-rc.d -f nginx defaults &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动nginx并设置开机启动 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "start nginx service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;$INIT_DIR/nginx start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 'PATH=$PATH:/usr/local/nginx/sbin;export PATH' &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_80=$(lsof -i:80|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_80 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Nginx service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,Nginx service has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function mysql_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/mysql_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the MySQL service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装前的初始配置工作：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "The initial configuration before installation..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;useradd -d $MYSQL_DIR mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/data/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/log/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 解包编译安装:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "make install the MySQL package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd src/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -zxvf mysql-5.6.13.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd mysql-5.6.13 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cmake -DCMAKE_INSTALL_PREFIX=$MYSQL_DIR \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_CHARSET=gbk \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_COLLATION=gbk_chinese_ci \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DEXTRA_CHARSETS=all \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MYISAM_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_INNOBASE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MEMORY_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_FEDERATED_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_READLINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DENABLED_LOCAL_INFILE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_DATADIR=$MYSQL_DIR/data \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_USER=mysql \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_TCP_PORT=3306 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DSYSCONFDIR=/etc \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_SSL=yes &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $MYSQL_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$MYSQL_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# mysql配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e /etc/my.cnf ] &amp;&amp; rm -rf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/my.cnf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 将mysql的库文件路径加入系统的库文件搜索路径中
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/lib/mysql /usr/lib/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 输出mysql的头文件到系统头文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/include/mysql /usr/include/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 进入安装路径,初始化配置脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Initialize the configuration of the MySQL..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $MYSQL_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;scripts/mysql_install_db --user=mysql --datadir=$MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;OS_NAME=$(sed -n '1p' /etc/issue |awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;# 复制mysql启动脚本到系统服务目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e $INIT_DIR/mysqld ] &amp;&amp; mv $INIT_DIR/mysqld $INIT_DIR/mysqld.old &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp $MYSQL_DIR/support-files/mysql.server $INIT_DIR/mysqld &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 系统启动项相关配置
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --add mysqld &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --level 35 mysqld on &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service mysqld start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 复制mysql启动脚本到系统服务目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;update-rc.d -f mysqld remove &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e $INIT_DIR/mysqld ] &amp;&amp; mv $INIT_DIR/mysqld $INIT_DIR/mysqld.old &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp $MYSQL_DIR/support-files/mysql.server $INIT_DIR/mysqld &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 系统启动项相关配置
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 755 $INIT_DIR/mysqld &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;update-rc.d -f mysqld defaults &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$INIT_DIR/mysqld start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 配置权限
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Configure MySQL authority..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysqladmin -u root password 123456 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;#给root用户非本地链接所有权限,并改密码和赋予其给其他人下发权限.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'%' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'localhost' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 'PATH=$PATH:/usr/local/mysql/bin;export PATH' &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_3306=$(lsof -i:3306|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_3306 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "MySQL service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,MySQL service has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# php install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function php_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/php_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the PHP module for nginx..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装前的初始配置工作：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "The initial configuration before installation..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 添加php用户组
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;groupadd nobody &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# php安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -jxvf php-5.4.13.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd php-5.4.13
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 此处编译安装了我们项目经常用到的PHP模块,如有其它需要可以自定义添加.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;./configure --prefix=$PHP_DIR --enable-fastcgi --enable-fpm --with-libxml-dir=/usr/local/lib --with-zlib-dir=/usr/local/lib --with-mysql=$MYSQL_DIR --with-mysqli=$MYSQL_DIR/bin/mysql_config --with-gd --enable-soap --enable-sockets &nbsp;--enable-xml --enable-mbstring --with-png-dir=/usr/local --with-jpeg-dir=/usr/local --with-curl=/usr/lib --with-freetype-dir=/usr/include/freetype2/freetype/ --enable-bcmath --enable-zip --enable-maintainer-zts &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $PHP_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$PHP_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# PHP配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src/php-5.4.13
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp php.ini-development $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 隐藏PHP版本信息：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# echo "expose_php = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭警告及错误信息,爆路径:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "display_errors = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 调整时区,防止phpinfo()函数报错.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "date.timezone =PRC" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 开启php错误日志并设置路径.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "log_errors = On" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "error_log = $NGINX_DIR/logs/php_error.log" &nbsp;&gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 配置启动FastCGI进程：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $PHP_DIR/etc/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ ! -e php-fpm.conf ] &amp;&amp; cp php-fpm.conf.default php-fpm.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 设置开机启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 注:ubuntu添加启动项需插入到 exit 0 前
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$PHP_DIR/sbin/php-fpm" &gt;&gt; /etc/rc.local
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sed -i "/^exit 0/ i\\$PHP_DIR\/sbin\/php-fpm" /etc/rc.local
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 配置nginx加载php-fpm
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sed -i '$ i\ &nbsp; &nbsp;include \"\/usr\/local\/nginx\/conf\/vhosts\/\*.conf\"; ' $NGINX_DIR/conf/nginx.conf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $NGINX_DIR/conf/vhosts &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $NGINX_DIR/html/127.0.0.1 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/default.conf $NGINX_DIR/conf/vhosts/ &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/info.php $NGINX_DIR/html/127.0.0.1/ &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 重启nginx和php-fpm:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "restart nginx and php-fpm to load the php module..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$INIT_DIR/nginx restart &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;killall php-fpm &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$PHP_DIR/sbin/php-fpm &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断php-fpm服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_9000=$(lsof -i:9000|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_9000 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "php-fpm service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "php-fpm service start..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断PHP是否加载:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PHP_LOAD=$(curl --head <a href="http://127.0.0.1/info.php" rel="nofollow">http://127.0.0.1/info.php</a> |grep PHP |wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PHP_LOAD == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "PHP does not load,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,PHP module has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------------
</p>
<p>
	</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/1007">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL] LNMP一键安装脚本设计(v1.0)" href="http://www.showerlee.com/archives/1007">http://www.showerlee.com/archives/1007</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/1007/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[SHELL] LAMP一键安装脚本设计(v2.1)</title>
		<link>http://www.showerlee.com/archives/1005</link>
		<comments>http://www.showerlee.com/archives/1005#comments</comments>
		<pubDate>Sat, 30 Nov 2013 14:14:43 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[SHELL]]></category>
		<category><![CDATA[LAMP APACHE PHP MYSQL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=1005</guid>
		<description><![CDATA[这个周末刚好闲下来,终于把支持ubuntu的版本搞定,期间还算顺利. 本版本的测试环境为Ubuntu serv [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	这个周末刚好闲下来,终于把支持ubuntu的版本搞定,期间还算顺利.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	本版本的测试环境为Ubuntu server 12.04.3 x86 &amp; x64
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	在2.0版本基础上修复了一些已知BUG,有需要的朋友可以尝试在其他版本的centos和ubuntu系统版本上测试下,如有问题,请在此留言.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	程序下载地址:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Onekey_LAMP_v2.1:&nbsp;<a href="http://www.showerlee.com/down/Onekey_lamp_v2.1.zip" target="_blank">http://www.showerlee.com/down/Onekey_lamp_v2.1.zip</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	以下为部分脚本内容:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat install_lamp.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# LAMP目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	DEFAULT_DIR=$(pwd)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG_DIR=$(pwd)/log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	INIT_DIR=/etc/init.d
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	MYSQL_DIR=/usr/local/mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	APACHE_DIR=/usr/local/apache2
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PHP_DIR=/usr/local/php5
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PCRE_DIR=/usr/local/pcre
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/apache.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "=================================================================
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Welcome to Onekey LAMP installation,created by showerlee.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Version:2.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;QQ:381362772
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;BLOG:<a href="http://www.showerlee.com" rel="nofollow">http://www.showerlee.com</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;Since 2013.11.30
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	==================================================================
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Select option for your choice.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;1 install all service(apache + php + mysql)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;2 install apache+php
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;3 install apache
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;4 install mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;5 quit"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sleep 0.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please Input 1,2,3,4,5: " SERVER_ID
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [[ $SERVER_ID == 1 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 2 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 3 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 4 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;exit
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# check the system environment
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function check_env_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/check_env_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "check the system environment..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断是否为root用户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $UID != 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "You must be root to run the install script."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装开发包(使用默认CENTOS更新源):
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Dependency package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;OS_NAME=$(sed -n '1p' /etc/issue |awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;yum -y install lsof wget gcc-c++ ncurses ncurses-devel cmake \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make perl bison openssl openssl-devel gcc* libxml2 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;libxml2-devel curl-devel libjpeg* libpng* freetype*
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;apt-get update
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;apt-get install -y &nbsp;cmake gcc g++ make autoconf libltdl-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libgd2-xpm-dev libfreetype6 libfreetype6-dev libxml2-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libjpeg-dev libpng12-dev libcurl4-openssl-dev libssl-dev \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	patch libmcrypt-dev libmhash-dev libncurses5-dev &nbsp;\
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libreadline-dev bzip2 libcap-dev ntpdate diffutils \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	exim4 iptables unzip sudo
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 安装chkconfig
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	dpkg -i $DEFAULT_DIR/src/chkconfig_11.0-79.1-2_all.deb
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ln -s /usr/lib/insserv/insserv /sbin/insserv &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭相关服务和SELINUX
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Stop useless service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables -F &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;service iptables save 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;setenforce 0 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables -F &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;iptables-save &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig httpd off 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig mysql off 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service httpd stop 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service mysql stop 2&gt;/dev/null &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断能否访问公网
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 8.8.8.8 &gt;&gt; /etc/resolv.conf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Check your Networking..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;NET_ALIVE=$(ping 8.8.8.8 -c 5 |grep 'received'|awk 'BEGIN {FS=","} {print $2}'|awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $NET_ALIVE == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is not active,please check your network configuration!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is active,continue.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 同步时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "synchronize time..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ntpdate tiger.sina.com.cn &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;hwclock -w
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "finish check..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/apache.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# apache install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function apache_ins { &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/apache_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Apache service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# pcre依赖包安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "install the dependency pcre package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -xzvf pcre-8.32.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd pcre-8.32
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;./configure --prefix=$PCRE_DIR &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# apache安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "install apache package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 注:httpd-2.4.3-deps.tar.bz2已集成APR，安装apache前检查pcre是否安装成功.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar jxvf httpd-2.4.4.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar jxvf httpd-2.4.3-deps.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp -rf httpd-2.4.3/* httpd-2.4.4
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd httpd-2.4.4
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; ./configure --prefix=$APACHE_DIR --enable-so --enable-rewrite \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; -enable-ssl=static -with-ssl=/usr/local/ssl -enable-mods-shared=all \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; --with-pcre=$PCRE_DIR/bin/pcre-config &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $APACHE_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$APACHE_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# mysql配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 防止apache启动报错.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "ServerName localhost:80" &gt;&gt; $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置开机启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 注:ubuntu添加启动项需插入到 exit 0 前
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $OS_NAME == 'CentOS' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$APACHE_DIR/bin/apachectl start" &gt;&gt; /etc/rc.local
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;elif [ $OS_NAME == 'Ubuntu' ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;sed -i "/^exit 0/ i\\$APACHE_DIR\/bin\/apachectl start" /etc/rc.local
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "unknown system,quit..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动apache
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "start apache httpd service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl start &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 'PATH=$PATH:/usr/local/apache2/bin;export PATH' &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_80=$(lsof -i:80|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_80 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Apache httpd service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,Apache httpd service has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function mysql_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/mysql_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the MySQL service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装前的初始配置工作：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "The initial configuration before installation..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;useradd -d $MYSQL_DIR mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/data/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/log/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 解包编译安装:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "make install the MySQL package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd src/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -zxvf mysql-5.6.13.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd mysql-5.6.13 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cmake -DCMAKE_INSTALL_PREFIX=$MYSQL_DIR \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_CHARSET=gbk \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_COLLATION=gbk_chinese_ci \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DEXTRA_CHARSETS=all \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MYISAM_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_INNOBASE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MEMORY_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_FEDERATED_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_READLINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DENABLED_LOCAL_INFILE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_DATADIR=$MYSQL_DIR/data \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_USER=mysql \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_TCP_PORT=3306 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DSYSCONFDIR=/etc \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_SSL=yes &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $MYSQL_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$MYSQL_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# mysql配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e /etc/my.cnf ] &amp;&amp; rm -rf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/my.cnf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 将mysql的库文件路径加入系统的库文件搜索路径中
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/lib/mysql /usr/lib/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 输出mysql的头文件到系统头文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/include/mysql /usr/include/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 进入安装路径,初始化配置脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Initialize the configuration of the MySQL..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $MYSQL_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;scripts/mysql_install_db --user=mysql --datadir=$MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 复制mysql启动脚本到系统服务目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e $INIT_DIR/mysqld ] &amp;&amp; mv $INIT_DIR/mysqld $INIT_DIR/mysqld.old &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp $MYSQL_DIR/support-files/mysql.server $INIT_DIR/mysqld &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 系统启动项相关配置
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --add mysqld &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --level 35 mysqld on &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service mysqld start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 配置权限
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Configure MySQL authority..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysqladmin -u root password 123456 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;#给root用户非本地链接所有权限,并改密码和赋予其给其他人下发权限.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'%' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'localhost' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 'PATH=$PATH:/usr/local/mysql/bin;export PATH' &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_3306=$(lsof -i:3306|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_3306 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "MySQL service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,MySQL service has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# php install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function php_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/php_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the PHP module for apache..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -jxvf php-5.4.13.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd php-5.4.13
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 此处编译安装了我们项目经常用到的PHP模块,如有其它需要可以自定义添加.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;./configure --prefix=$PHP_DIR --with-apxs2=$APACHE_DIR/bin/apxs \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-libxml-dir=/usr/local/lib --with-zlib-dir=/usr/local/lib \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-mysql=$MYSQL_DIR --with-mysqli=$MYSQL_DIR/bin/mysql_config \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-gd --enable-soap --enable-sockets --enable-xml --enable-mbstring \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-png-dir=/usr/local --with-jpeg-dir=/usr/local --with-curl=/usr/lib \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-freetype-dir=/usr/include/freetype2/freetype/ --enable-bcmath \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --enable-calendar --enable-zip --enable-maintainer-zts &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [[ $? != 0 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "error in the compilation,stop.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "compilation finish..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $PHP_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$PHP_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# PHP配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp php.ini-development $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "AddType application/x-httpd-php .php" &gt;&gt; $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sed -i '/DirectoryIndex index.html/s/$/ &amp;index.php/g' $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 隐藏PHP版本信息：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# echo "expose_php = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭警告及错误信息,爆路径:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "display_errors = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 调整时区,防止phpinfo()函数报错.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "date.timezone =PRC" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 开启php错误日志并设置路径.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "log_errors = On" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "error_log = $APACHE_DIR/logs/php_error.log" &nbsp;&gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/info.php $APACHE_DIR/htdocs &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 重启apache:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "restart apache to load the php module..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断PHP是否加载:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PHP_LOAD=$(curl --head <a href="http://localhost/info.php" rel="nofollow">http://localhost/info.php</a> |grep PHP |wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PHP_LOAD == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "PHP does not load,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,PHP module has been installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/1005">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL] LAMP一键安装脚本设计(v2.1)" href="http://www.showerlee.com/archives/1005">http://www.showerlee.com/archives/1005</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/1005/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>[SHELL] LAMP一键安装脚本设计(v1,v2)</title>
		<link>http://www.showerlee.com/archives/1000</link>
		<comments>http://www.showerlee.com/archives/1000#comments</comments>
		<pubDate>Fri, 29 Nov 2013 07:14:33 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[SHELL]]></category>
		<category><![CDATA[LAMP APACHE PHP MYSQL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=1000</guid>
		<description><![CDATA[最近一直在学习PYTHON,抽空在闲暇时间利用SHELL编写了一个LAMP一键安装脚本,目前分v1无人值守版本 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近一直在学习PYTHON,抽空在闲暇时间利用SHELL编写了一个LAMP一键安装脚本,目前分v1无人值守版本和v2用户自定义版本,下面把脚本的一些设计思路和部分SHELL脚本写了下来,供大家参考.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;目前版本的测试环境为CentOS6.3 x86和x64版本,后期会针对ubuntu系统环境以及LNMP架构进行更新.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;开始正题:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;v1版本很简单,项目下分conf和src目录,分别放置相关配置文件和LAMP编译包,以及4个shell安装脚本,无人值守情况下,运行相应脚本文件即可完成安装.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如图:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<a href="http://www.showerlee.com/wp-content/uploads/2013/11/1.png"><img onerror="javascript:this.src='http://www.showerlee.com/wp-content/themes/BYMT/images/images_error.jpg'" src="http://www.showerlee.com/wp-content/uploads/2013/11/1.png" alt="1" width="605" height="163" class="alignnone size-full wp-image-1001" /></a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	v2版本相对比较系统:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;conf目录放置配置文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;lib目录放置安装具体服务的SHELL脚本(apache,mysql,php等),脚本内为相应的方法,供主脚本调用
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;log目录放置安装日志
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;src目录放置LAMP具体编译包
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;install_lamp.sh脚本为主配置脚本,运行后会提供给用户可选择安装界面,供用户自定义安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如图:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<br class="Apple-interchange-newline" /><br />
<br />
<a href="http://www.showerlee.com/wp-content/uploads/2013/11/2.png"><img onerror="javascript:this.src='http://www.showerlee.com/wp-content/themes/BYMT/images/images_error.jpg'" src="http://www.showerlee.com/wp-content/uploads/2013/11/2.png" alt="2" width="612" height="144" class="alignnone size-full wp-image-1002" /></a><span></span><a href="http://www.showerlee.com/wp-content/uploads/2013/11/3.png"><img onerror="javascript:this.src='http://www.showerlee.com/wp-content/themes/BYMT/images/images_error.jpg'" src="http://www.showerlee.com/wp-content/uploads/2013/11/3.png" alt="3" width="474" height="108" class="alignnone size-large wp-image-1003" /></a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	以下介绍v2版本的具体脚本内容,具体安装包下载地址如下:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Onekey_LAMP_v1:&nbsp;<a href="http://www.showerlee.com/down/lamp_v1.zip" target="_blank">http://www.showerlee.com/down/lamp_v1.zip</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Onekey_LAMP_v2:&nbsp;<a href="http://www.showerlee.com/down/lamp_v2.zip" target="_blank">http://www.showerlee.com/down/lamp_v2.zip</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:<span>系统编码使用UTF-8,加载mysql与apache的环境变量</span></span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; apache编译包版本为2.4.4,DocumentRoot路径/usr/local/apache2/htdocs,加载https加密通道.</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; mysql编译包版本为5.6.13,库文件路径/usr/local/mysql/data.</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; mysql安装初始账户密码为root/123456</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; php编译包版本为5.4.13,默认加载了笔者线上常用的模块</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"></span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat install_lamp.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin::/usr/local/bin:/usr/local/sbin;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# LAMP目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	DEFAULT_DIR=$(pwd)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG_DIR=$(pwd)/log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	MYSQL_DIR=/usr/local/mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	APACHE_DIR=/usr/local/apache2
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PHP_DIR=/usr/local/php5
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PCRE_DIR=/usr/local/pcre
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/apache.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Welcome to Onekey LAMP installation,select option for your choice.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;1 install all service(apache + php + mysql)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;2 install apache+php
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;3 install apache
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;4 install mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;5 quit"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sleep 0.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please Input 1,2,3,4,5: " SERVER_ID
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [[ $SERVER_ID == 1 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 2 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; php_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 3 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; apache_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [[ $SERVER_ID == 4 ]]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; check_env_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; mysql_ins
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;exit
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/check_env.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# check the system environment
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function check_env_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/check_env_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "check the system environment..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭相关服务和SELINUX
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Stop useless service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig httpd off 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig mysql off 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service apache2 stop 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service mysql stop 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;iptables -F &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service iptables save 2&gt;/dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;setenforce 0 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断能否访问公网
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo 8.8.8.8 &gt;&gt; /etc/resolv.conf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Check your Networking..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;NET_ALIVE=$(ping 8.8.8.8 -c 5 |grep 'received'|awk 'BEGIN {FS=","} {print $2}'|awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $NET_ALIVE == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is not active,please check your network configuration!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Network is active,continue.."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装开发包(使用默认CENTOS更新源):
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Dependency package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;yum -y install lsof wget gcc-c++ ncurses ncurses-devel cmake \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	make perl bison openssl openssl-devel gcc* libxml2 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	libxml2-devel curl-devel libjpeg* libpng* freetype*
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 同步时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "synchronization time..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ntpdate tiger.sina.com.cn &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;hwclock -w
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/apache.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# apache install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function apache_ins { &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/apache_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the Apache service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# pcre依赖包安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "install the dependency pcre package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -xzvf pcre-8.32.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd pcre-8.32
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;./configure --prefix=$PCRE_DIR &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# apache安装
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "install apache package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 注:httpd-2.4.3-deps.tar.bz2已集成APR，安装apache前检查pcre是否安装成功.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar jxvf httpd-2.4.4.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar jxvf httpd-2.4.3-deps.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp -rf httpd-2.4.3/* httpd-2.4.4
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd httpd-2.4.4
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; ./configure --prefix=$APACHE_DIR --enable-so --enable-rewrite \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; -enable-ssl=static -with-ssl=/usr/local/ssl -enable-mods-shared=all \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; --with-pcre=$PCRE_DIR/bin/pcre-config &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $APACHE_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$APACHE_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# mysql配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 防止apache启动报错.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "ServerName localhost:80" &gt;&gt; $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置开机启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "$APACHE_DIR/bin/apachectl start" &gt;&gt; /etc/rc.local
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动apache
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "start apache httpd service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl start &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; # 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "PATH=$PATH:$APACHE_DIR/bin;export PATH" &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_80=$(lsof -i:80|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_80 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Apache httpd service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,Apache httpd service has installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function mysql_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/mysql_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the MySQL service..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 安装前的初始配置工作：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "The initial configuration before installation..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;useradd -d $MYSQL_DIR mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;mkdir -p $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/data/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chown -R mysql:mysql $MYSQL_DIR/log/ &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chmod 750 $MYSQL_DIR/log &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp; &nbsp; &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 解包编译安装:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "make install the MySQL package..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd src/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -zxvf mysql-5.6.13.tar.gz &gt;&gt; $IN_LOG 2&gt;&amp;1 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd mysql-5.6.13 &nbsp;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cmake -DCMAKE_INSTALL_PREFIX=$MYSQL_DIR \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_CHARSET=gbk \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DDEFAULT_COLLATION=gbk_chinese_ci \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DEXTRA_CHARSETS=all \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MYISAM_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_INNOBASE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_MEMORY_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_FEDERATED_STORAGE_ENGINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_READLINE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DENABLED_LOCAL_INFILE=1 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_DATADIR=$MYSQL_DIR/data \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_USER=mysql \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DMYSQL_TCP_PORT=3306 \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DSYSCONFDIR=/etc \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;-DWITH_SSL=yes &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $MYSQL_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$MYSQL_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# mysql配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;[ -e /etc/my.cnf ] &amp;&amp; rm -rf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/my.cnf /etc/my.cnf &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 将mysql的库文件路径加入系统的库文件搜索路径中
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/lib/mysql /usr/lib/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 输出mysql的头文件到系统头文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;ln -s $MYSQL_DIR/include/mysql /usr/include/mysql &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 进入安装路径,初始化配置脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Initialize the configuration of the MySQL..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $MYSQL_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;scripts/mysql_install_db --user=mysql --datadir=$MYSQL_DIR/data &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 复制mysql启动脚本到系统服务目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp $MYSQL_DIR/support-files/mysql.server /etc/init.d/mysqld &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 系统启动项相关配置
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --add mysqld &nbsp;&gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;chkconfig --level 35 mysqld on &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 启动mysql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;service mysqld start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 配置权限
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Configure MySQL authority..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysqladmin -u root password 123456 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;#给root用户非本地链接所有权限,并改密码和赋予其给其他人下发权限.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'%' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$MYSQL_DIR/bin/mysql -u root -p123456 -e "grant all privileges on *.* to root@'localhost' identified by '123456' with grant option;" &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 设置环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "PATH=$PATH:$MYSQL_DIR/bin;export PATH" &gt;&gt; /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;source /etc/profile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断服务是否启动
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PORT_3306=$(lsof -i:3306|wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PORT_3306 == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "MySQL service is not active,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,MySQL service has installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat lib/php.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# php install function
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function php_ins {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;local IN_LOG=$LOG_DIR/php_install-$(date +%F).log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "Install the PHP module for apache..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR/src
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;tar -jxvf php-5.4.13.tar.bz2 &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd php-5.4.13
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 此处编译安装了我们项目经常用到的PHP模块,如有其它需要可以自定义添加.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;./configure --prefix=$PHP_DIR --with-apxs2=$APACHE_DIR/bin/apxs \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-libxml-dir=/usr/local/lib --with-zlib-dir=/usr/local/lib \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-mysql=$MYSQL_DIR --with-mysqli=$MYSQL_DIR/bin/mysql_config \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-gd --enable-soap --enable-sockets --enable-xml --enable-mbstring \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-png-dir=/usr/local --with-jpeg-dir=/usr/local --with-curl=/usr/lib \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --with-freetype-dir=/usr/include/freetype2/freetype/ --enable-bcmath \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; --enable-calendar --enable-zip --enable-maintainer-zts &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;make install &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断目录是否创建:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ ! -d $PHP_DIR ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "$PHP_DIR is not exist,stop..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# PHP配置项：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "configuration after the installation...."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sleep 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp php.ini-development $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "AddType application/x-httpd-php .php" &gt;&gt; $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;sed -i '/DirectoryIndex index.html/s/$/ &amp;index.php/g' $APACHE_DIR/conf/httpd.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 隐藏PHP版本信息：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# echo "expose_php = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 关闭警告及错误信息,爆路径:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "display_errors = Off" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 调整时区,防止phpinfo()函数报错.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "date.timezone =PRC" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 开启php错误日志并设置路径.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "log_errors = On" &gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "error_log = $APACHE_DIR/logs/php_error.log" &nbsp;&gt;&gt; $PHP_DIR/lib/php.ini
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cd $DEFAULT_DIR
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;cp conf/info.php $APACHE_DIR/htdocs &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 重启apache:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;echo "restart apache to load the php module..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl stop &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;$APACHE_DIR/bin/apachectl start &gt;&gt; $IN_LOG 2&gt;&amp;1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;# 判断PHP是否加载:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;PHP_LOAD=$(curl --head <a href="http://localhost/info.php" rel="nofollow">http://localhost/info.php</a> |grep PHP |wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;if [ $PHP_LOAD == 0 ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "PHP does not load,please check your configure!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; echo "Congratulation,PHP module has installed correctly!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------------------------------</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/1000">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL] LAMP一键安装脚本设计(v1,v2)" href="http://www.showerlee.com/archives/1000">http://www.showerlee.com/archives/1000</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/1000/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL]mysql主从+keepalived线上恢复解决方案</title>
		<link>http://www.showerlee.com/archives/917</link>
		<comments>http://www.showerlee.com/archives/917#comments</comments>
		<pubDate>Tue, 17 Sep 2013 08:49:54 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[SHELL]]></category>
		<category><![CDATA[KEEPALIVED]]></category>
		<category><![CDATA[MYSQL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=917</guid>
		<description><![CDATA[最近一个项目需要做一个mysql+keepalived高可用主从同步，配起来当然轻车熟路，但想到如何在主库挂掉 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近一个项目需要做一个mysql+keepalived高可用主从同步，配起来当然轻车熟路，但想到如何在主库挂掉，从库接管后，以最快的速度恢复数据，并让主库重新接管，所以整理了下思路，编写了如下脚本，供大家参考
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql主从,以及keepalived高可用配置本博传送门:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#E53333;"><a href="http://www.showerlee.com/archives/300" target="_blank"><span style="color:#E53333;"><a href="http://www.showerlee.com/archives/300" rel="nofollow">http://www.showerlee.com/archives/300</a></span></a></span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<a href="http://www.showerlee.com/archives/702" target="_blank"><span style="color:#E53333;"><a href="http://www.showerlee.com/archives/702" rel="nofollow">http://www.showerlee.com/archives/702</a></span><span style="color:#E53333;"></span></a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	一.备份从库当前数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:以下的所有配置需要在数据库未运转状态下进行，建议做一个iptables规则禁止非管理员IP访问主从服务器IP，以及VIP，这样既能保证管理员可SSH远程登陆配置，又能恢复主从环境，待配置完成后解除禁止即可。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/mysql_bak.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 日常备份目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	basedir=/backup/daily/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 数据库账户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	passwd=123456
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql备份目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql_db_bak=$basedir/$(date +%F_%H%M)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ ! -d "$mysql_db_bak" ] &amp;&amp; mkdir -p $mysql_db_bak
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql下所有库名称
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 1.备份MySQL数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0; i!=${#db_name[@]}; ++i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysqldump -u $user -p$passwd --opt --skip-lock-tables --flush-logs --database ${db_name[i]} &gt; $mysql_db_bak/${db_name[i]}.sql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	二.复制从（192.168.7.12）数据库备份到主库（192.168.7.9）
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/scp_mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	scp /backup/daily/2013-09-10_1258/* 192.168.7.9:/tmp
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	三.恢复主库（192.168.7.9）
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/recover_mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 数据库账户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	passwd=123456
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# # mysql下所有库名称
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 恢复MySQL数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cd /tmp
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0; i!=${#db_name[@]}; ++i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "drop database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "create database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd ${db_name[i]} &lt; ${db_name[i]}.sql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 开启从库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "stop slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "reset slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 设置从库连接主库的相关参数，可利用相关命令查看
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "change master to master_host='192.168.7.9',master_user='slave',master_password='123456#',master_log_file='bin.000029',master_log_pos=106 ";
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "start slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 查看主从是否连接成功
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "show slave status\G;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	四.查看主从同步信息
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.查看主库binlog日志以及偏移量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql -u root -p123456 -e "show master status"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.查看从库是否连接到主库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql -u root -p123456 -e " show slave status\G;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:实际操作中发现，一旦VIP切换后有一定几率造成主从服务器都会同时获取到该虚IP，导致主从数据库冲突，无论重启keepalived与否都无法干掉该VIP，目前我的临时解决方案是将两台服务器均重新启动，大家如果有更好的方法请留言告知我，不胜感谢。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"><br />
</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"> </span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近一个项目需要做一个mysql+keepalived高可用主从同步，配起来当然轻车熟路，但想到如何在主库挂掉，从库接管后，以最快的速度恢复数据，并让主库重新接管，所以整理了下思路，编写了如下脚本，供大家参考
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql主从,以及keepalived高可用配置本博传送门:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<a href="http://showerlee.blog.51cto.com/2047005/1220801" target="_blank">http://showerlee.blog.51cto.com/2047005/1220801</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<a href="http://showerlee.blog.51cto.com/2047005/1188549" target="_blank">http://showerlee.blog.51cto.com/2047005/1188549</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	一.备份从库当前数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:以下的所有配置需要在数据库未运转状态下进行，建议做一个iptables规则禁止非管理员IP访问主从服务器IP，以及VIP，这样既能保证管理员可SSH远程登陆配置，又能恢复主从环境，待配置完成后解除禁止即可。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/mysql_bak.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 日常备份目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	basedir=/backup/daily/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 数据库账户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	passwd=123456
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql备份目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql_db_bak=$basedir/$(date +%F_%H%M)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ ! -d "$mysql_db_bak" ] &amp;&amp; mkdir -p $mysql_db_bak
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql下所有库名称
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 1.备份MySQL数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0; i!=${#db_name[@]}; ++i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysqldump -u $user -p$passwd --opt --skip-lock-tables --flush-logs --database ${db_name[i]} &gt; $mysql_db_bak/${db_name[i]}.sql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	二.复制从（192.168.7.9）数据库备份到主库（192.168.7.12）
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/scp_mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	scp /backup/daily/2013-09-10_1258/* 192.168.7.9:/tmp
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	三.恢复主库（192.168.7.9）
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	版本一:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi /etc/rc.d/recover_mysql.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 数据库账户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	passwd=123456
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# # mysql下所有库名称
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 恢复MySQL数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cd /tmp
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0; i!=${#db_name[@]}; ++i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "drop database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "create database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd ${db_name[i]} &lt; ${db_name[i]}.sql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 开启从库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "stop slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "reset slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 设置从库连接主库的相关参数，可利用相关命令查看
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "change master to master_host='192.168.7.9',master_user='slave',master_password='123456#',master_log_file='bin.000029',master_log_pos=106 ";
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "start slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 查看主从是否连接成功
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $user -p$passwd -e "show slave status\G;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">版本二:</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">(自动获取主库binlog文件,和偏移值,优化参数,推荐):</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 环境变量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 数据库参数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	master_ip=192.168.7.9
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql_master_user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql_slave_user=root
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql_passwd=123456
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	master_user=slave
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	master_passwd=123456#
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	master_log_file=$(mysql -h$master_ip -u$mysql_master_user -p$mysql_passwd -e "show master status" |sed -n '2p' |awk '{print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	master_log_pos=$(mysql -h$master_ip -u$mysql_master_user -p$mysql_passwd -e "show master status" |sed -n '2p' |awk '{print $2}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 恢复MySQL数据库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cd /tmp/mysql_bak
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0; i!=${#db_name[@]}; ++i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "drop database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "create database \`${db_name[i]}\`;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd ${db_name[i]} &lt; ${db_name[i]}.sql
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 开启从库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "stop slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "reset slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "change master to master_host='${master_ip}',master_user='${master_user}',master_password='${master_passwd}',master_log_file='${master_log_file}',master_log_pos=${master_log_pos};"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "start slave;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $mysql_slave_user -p$mysql_passwd -e "show slave status\G;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------------------
</p>
<p>
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	四.查看主从同步信息
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.查看主库binlog日志以及偏移量
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql -u root -p123456 -e "show master status"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.查看从库是否连接到主库
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# mysql -u root -p123456 -e " show slave status\G;"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:实际操作中发现，一旦VIP切换后有一定几率造成主从服务器都会同时获取到该虚IP，导致主从数据库冲突，无论重启keepalived与否都无法干掉该VIP，目前我的临时解决方案是将两台服务器均重新启动，大家如果有更好的方法请留言告知我，不胜感谢。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"><br />
</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"></span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">后续:</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">在网上翻阅大量资料，初步判断VIP切换后造成的冲突是因为在触发切换动作时使用的pkill keepalived 来杀掉keepaliaved进程，造成系统只是杀掉<span>keepalived</span>自身进程，并未来得及切换VIP，</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">目前的解决方案是使用正规的keepalived启动脚本/etc/init.d/keepalived stop 来关闭</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">初步测试未发现异常。。。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">如果出现主从在切换VIP时，出现了主的VIP未自动关闭，从的正常开启，导致都获取到VIP，造成互相冲突的情况，可手动输入如下命令删除一方的VIP地址</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;"># ip addr del "虚拟ip" dev eth0</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">但此方法只是一个临时的解决方案，当手动删除VIP后，重启keepalived服务会无法正常开启vip，需要重启服务器方能恢复。</span>
</p>
<p></p>
<p>
	</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/917">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL]mysql主从+keepalived线上恢复解决方案" href="http://www.showerlee.com/archives/917">http://www.showerlee.com/archives/917</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/917/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL]shell scripts笔记(2)</title>
		<link>http://www.showerlee.com/archives/599</link>
		<comments>http://www.showerlee.com/archives/599#comments</comments>
		<pubDate>Tue, 27 Aug 2013 10:58:37 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[SHELL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=599</guid>
		<description><![CDATA[最近一直在研究shell脚本，整理了些比较有用的以备不时之需。。 1.获取字符串长度 # var=123456 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近一直在研究shell脚本，整理了些比较有用的以备不时之需。。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.获取字符串长度
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# var=1234567890
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo ${#var}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.识别当前shell版本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo $<a href="http://www.showerlee.com/archives/tag/shell" title="查看SHELL中的全部文章" class="tag_link">SHELL</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo $0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.检查是否为超级用户
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ $UID -ne 0 ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo Non root user .Please run as root.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Root user"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.修改Bash提示字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/bashrc | grep PS1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	5.重定向脚本内部的文本块
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cat &lt;&lt;EOF&gt;&gt;log.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG FILE HEADER
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	This is a test log file
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Function: System statistions
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	6.删除空白行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat file.txt | tr -s '\n'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat file.txt | sed '/^$/d'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	7.find忽略大小写
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . -iname "example" -print
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	8.find 匹配多个条件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . \( -name "*.txt" -o -name "*.pdf" \) -print
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	9.否定参数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . ! -name "*.txt" -print
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	10.结合find使用xargs
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . -type f -name "*.txt" -print0 | xargs -0 rm -f
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：这里xargs -0将\0作为输入定界符，防止搜索到带空格的字符后被find识别成2个文件</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	11.生成一个大小为100K的测试文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# dd if=/dev/zero bs=100k count=1 of=date.file
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	12.用特定格式重命名当前目录下的图像文件、
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	count=1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for img in *.jpg *.png
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; new=image-$count.${img##*.}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; mv "$img" "$new" 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ $? -eq 0 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo "Renaming $img to $new"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; let count++
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	13.URL="www.google.com"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo ${URL%.*}&nbsp;<span style="color:#FF0000;"># 移除 .*所匹配的最右边的内容</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<a href="http://www.google" rel="nofollow">http://www.google</a>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo ${URL%%.*}&nbsp;<span style="color:#FF0000;"># 将从右边开始一直匹配到最左边的*.移除（贪婪操作符）</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	www
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo ${URL#*.}&nbsp;<span style="color:#FF0000;"># 移除*.所匹配的最左边的内容</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	google.com
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo ${URL##*.}&nbsp;<span style="color:#FF0000;"># 将从左边开始一直匹配到最右边的*.移除（贪婪操作符）</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	com
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	14.将一个文件设置为不可修改：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# chattr +i file
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	恢复：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# chattr -i file
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	15.生成不同的空白文件：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for name in (1...100).txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	touch $name
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	16.移除空白行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sed '/^$/d' file
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	17.打印可用的网络接口
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# ifconfig | cut -c-10 |tr -d ' ' |tr -s '\n'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：cut -c-10为提取每行前10个字符，也可以这么写 cut -c1-10，tr -d ' '为删除每行所有空格，tr -s &nbsp;'\n'为用单独的换行替换每一序列的一个或多个换行。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# ifconfig | grep '^[a-z].*' |cut -c-5
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	18.提取IP地址:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# ifconfig eth0 | grep 'inet addr:[0-9].*'|awk -F' ' '{print $2}'|awk -F':' '{print $2}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	子网掩码:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# ifconfig eth0 |grep &nbsp;'.*Mask:[0-9].*$' |awk -F':' '{print $4}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	网关:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# route |grep "^default" |awk -F' ' '{print $2}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	MAC:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# ifconfig eth0 |grep '^.*HWaddr.*$'| awk -F' ' '{print $5}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	19.添加DNS
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# echo "nameserver 61.134.1.4" &gt;&gt; /etc/resolv.conf
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	20.添加临时网关
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# route add default gw 192.168.7.1 eth0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	21.查看网内主机活动状态：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	NET_NUM=$(ifconfig eth0 | grep 'inet addr:[0-9].*'|awk -F' ' '{print $2}'|awk -F':' '{print $2}'|awk -F'.' '{print $1"."$2"."$3}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for IP in $NET_NUM.{1..254};
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; ping $IP -c2 &amp;&gt; /dev/null ;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; if [ $? -eq 0 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp;echo $IP is alive
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	22.配置IP地址
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin/:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	IFACE=eth0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	IP_ADDR=192.168.7.74
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	NET_MASK=255.255.255.0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	GW=192.168.7.1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 判断是否为root权限
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ $UID -ne 0 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo "Run as root"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; exit 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 关闭eth0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ifconfig $IFACE down
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#配置IP和掩码
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ifconfig $IFACE $IP_ADDR netmask $NET_MASK
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#配置网关
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	route add default gw $GW $IFACE
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 开启eth0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ifconfig $IFACE up
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Successfully configured $IFACE"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	23.收集远程主机运行时间(先做加密认证)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	IP_LIST="192.168.0.[1..254]"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	USER="test"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for IP in $IP_LIST;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; UPTIME=$(ssh $USER@$IP uptime |awk '{print $3}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo "$IP uptime: $UPTIME"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	24.列出本地当前开放的端口
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# netstat -ntulp |grep LISTEN |awk -F' ' '{print $4}'|sed 's/^0.0.0.0://g'|sed 's/^127.0.0.1://g'|sed 's/^::://g'|sed 's/^::1://g'|sort -n|uniq -c|awk -F' ' '{print $2}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# yum install nmap -y &amp;&amp; nmap -p1-65535 localhost
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	25.找出指定目录中最大的十个文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# du -ak . |sort -nrk 1 | head -n 10
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：-a指定了所有目录和文件,-k输出第一列以KB为单位的文件大小，sort对第一列依数值逆序排序，head用来显示前10行输出</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . -type f -exec du -k {} \; |sort -nrk 1 |head -n 10
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或(推荐，效率最高)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# find . -type f -print0 |xargs -0 du -k |sort -nrk 1 |head -n 10
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	26.计算命令执行时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# time find . -type f -exec du -k {} \; |sort -nrk 1 |head -n 10
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# time find . -type f -print0 |xargs -0 du -k |sort -nrk 1 |head -n 10
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	27.打印出10条最常用的命令
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printf "COMMAND\tCOUNT\n";
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cat ~/.bash_history | awk '{ list[$1]++; } \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	END{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for(i in list)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printf("%s\t%d\n",i,list[i]); }
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}'| sort -nrk 2 | head
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;在上面的脚本中，用~/.bash_history作为源文件，通过管道将源输入传递给awk,在awk中，我们使用了一个关联数组，这个数组将命令作为索引，将命令的出现的次数作为数组元素值。命令每出现一次，计数值增加1(list[$1]++).$1是输入文本行的第一个单词，如果使用$0,则包含输入文本行中所有的单词。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;比如说，如果ssh 192.168.0.4是.bash_history其中的一行，那么$0中包含ssh 192.168.0.4,$1中包含ssh.</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;一旦对命令历史文件中的所有行遍历完毕，我们就得到了一个数组，其中数组索引是命令名称，数组元素值是命令出现的次数，因此出现次数最多的命令名称就是使用最频繁的命令。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;在awk的END{}语句块中，我们遍历关联数组，打印出所有的命令名及其对应的出现次数，sort -nrk 2 对第2列(COUNT)按照数值逆序排序，最后用head 命令从列表中提取出前10条命令，你可以用head -n NUMBER将前10条命令改为前5条或者是其他任意数量。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	30.列出1小时内占用CPU最多的10个进程：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	SECS=3600
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	UNIT_TIME=60
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#secs为需要进行监视的总秒数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#UNIT_TIME是取样的时间间隔，单位是秒
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	STEPS=$(( $SECS / $ UNIT_TIME ))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo Watching CPU usage... ;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=0;i&lt;STEPS;i++))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;ps -eo comm,pcpu | tail -n +2 &gt;&gt; /tmp/cpu_usage.$$
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;sleep $UNIT_TIME
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo CPU eaters;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cat /tmp/cpu_usage.$$ | \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	awk '
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{ process[$1]+=$2; }
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	END{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; for(i in process)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; {
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp;printf("%-20s %s",i, process[i]) ;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;}' | sort -nrk 2 | head
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	rm /tmp/cpu_usage.$$
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#删除临时日志文件
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：在上面的脚本中，主要的输入源是ps -eo comm,pcpu,其中comm表示命令名(command name),pcpu表示CPU使用率(CPU usage in percent)。该命令输出所有进程名及CPU使用率，每个进程对应一行输出。因为需要监视一个小时内CPU的使用情况，所以我们得在一个每次迭代时间为60秒的for循环中不停的用ps -eo comm,pcpu |tail -n +2来获取CPU的使用统计数据，并将这些数据添加到文件/tmp/cpu_usage.$$中，60秒的迭代时间通过sleep 60来提供，这就使得每一分钟执行一次ps</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;tail -n +2用来将ps 输出中的头部和COMMAND %CPU剥离.</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;cpu_usage.$$中的$$表示当前脚本的进程ID，假设进程ID为1345，那么在脚本执行时，他会被替换成/tmp/cpu_usage.1345,因为这是一个临时文件，所以我们把它放在/tmp中。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;统计文件在1小时后就准备妥当了，文件中包含了60项，分别对应每分钟的进程状态，然后用awk求出每个进程中的CPU使用情况，我们用了一个关联数组来统计CPU的使用情况，其中进程名为数组索引，最后根据总的CPU使用情况依数值逆序排序，并通过head获得前10项。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	31.利用watch监控命令查看输出
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# watch -n 5 ls
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：利用此命令可以查看该目录的文件变化, -n 5 为间隔5秒更新一次</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	32.扫描secure日志文件并收集所需信息,生成入侵检测报告
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	方法一.扫描他人利用系统认证用户进行暴力破解。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	AUTHLOG=/var/log/secure
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ [ -n $1] ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; AUTHLOG=$1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo Using Default Log file : $AUTHLOG
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG=/tmp/valid.$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	grep &nbsp;-v "invalid" $AUTHLOG &gt; $LOG
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	users=$(grep "Failed password" $LOG | awk '{ print $(NF-5) }'| sort | uniq)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printf "%-5s|%-10s|%-10s|%-13s|%-13s|%-33s|%s\n" "No#" "User" "Attepts" "IP address" "Host_Mapping" "Time range"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ucount=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ip_list="$(egrep -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" $LOG | sort | uniq)"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for ip in $ip_list;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; grep $ip $LOG &gt; /tmp/temp.$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for user in $users;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; grep $user /tmp/temp.$$.log &gt; /tmp/$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; cut -c-16 /tmp/$$.log &gt; $$.time
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示登录时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; tstart=$(head -1 $$.time);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示从1970年到该时刻所经历的秒数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; start=$(date -d "$tstart" "+%s");
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示登出时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; tend=$(tail -1 $$.time);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示从1970年到该时刻所经历的秒数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; end=$(date -d "$tend" "+%s")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #算出登录时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; limit=$(( $end - $start ))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; if [ $limit -gt 1 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; let ucount++;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; IP=$(egrep -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" /tmp/$$.log | head -1 );
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; TIME_RANGE="$tstart --&gt; $tend"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; ATTEMPTS=$(cat /tmp/$$.log | wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; HOST=$(host $IP | awk '{print $NF}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; printf "%-5s|%-10s|%-10s|%-13s|%-13s|%-33s|%s\n" "$ucount" "$user" "$ATTEMPTS" "$IP" "$HOST" "$TIME_RANGE";
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	rm /tmp/valid.$$.log /tmp/$$.log $$.time /tmp/temp.$$.log 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	方法二.扫描他人利用系统认证用户或非系统用户进行暴力破解。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	AUTHLOG=/var/log/secure
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [[ -n $1 ]];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; AUTHLOG=$1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo Using Log file : $AUTHLOG
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo Using Default Log file : $AUTHLOG
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	LOG=/tmp/valid.$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	grep "Failed password" $AUTHLOG &gt; $LOG
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	users=$(cat $LOG | awk '{ print $(NF-5) }'| sort | uniq)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printf "%-5s|%-10s|%-10s|%-13s|%-13s|%-33s|%s\n" "No#" "User" "Attepts" "IP address" "Host_Mapping" "Time range"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ucount=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	ip_list="$(egrep -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" $LOG | sort | uniq)"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for ip in $ip_list;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; grep $ip $LOG &gt; /tmp/temp.$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for user in $users;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; grep $user /tmp/temp.$$.log &gt; /tmp/$$.log
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; cut -c-16 /tmp/$$.log &gt; $$.time
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示登录时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; tstart=$(head -1 $$.time);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示从1970年到该时刻所经历的秒数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; start=$(date -d "$tstart" "+%s");
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示登出时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; tend=$(tail -1 $$.time);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #显示从1970年到该时刻所经历的秒数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; end=$(date -d "$tend" "+%s")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; #算出登录时间
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; limit=$(( $end - $start ))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; if [ $limit -ge 0 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; let ucount++;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; IP=$(egrep -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" /tmp/$$.log | head -1 );
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; TIME_RANGE="$tstart --&gt; $tend"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; ATTEMPTS=$(cat /tmp/$$.log | wc -l)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; HOST=$(host $IP | awk '{print $NF}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; printf "%-5s|%-10s|%-10s|%-13s|%-13s|%-33s|%s\n" "$ucount" "$user" "$ATTEMPTS" "$IP" "$HOST" "$TIME_RANGE";
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	rm /tmp/valid.$$.log /tmp/$$.log $$.time /tmp/temp.$$.log 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	33.监视远程磁盘的健康情况
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	logfile="diskusage.log"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [[ -n $1 ]]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; logfile=$1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ ! -e $logfile ]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; printf "%-8s %-14s %-9s %-8s %-6s %-6s %-6s %s\n" "Data" "IP address" "Device" "Capacity" "Used" "Free" "Percent" "Status" &gt; $logfile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	IP_LIST="192.168.7.74"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	{
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for ip in $IP_LIST;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; ssh $ip 'df -h' |grep ^/dev/ &gt; /tmp/$$.df
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; while read line;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; cur_date=$(date +%D)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; printf "%-8s %-14s " $cur_date $ip
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; echo $line | awk '{ printf("%-9s %-8s %-6s %-6s %-8s",$1,$2,$3,$4,$5);}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; pusg=$(echo $line | egrep -o "[0-9]+%")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;&nbsp;<span style="color:#FF0000;"># 参见man bash 找${parameter/pattern/string}</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp; # .${parameter/pattern/string} ${parameter//pattern/string}</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp; # 在这里pattern也是一个模式，parameter展开后最长匹配的部分被string替换。 &nbsp; &nbsp; &nbsp;# 第一种情况只替换首次匹配，第二种情况替换所有匹配。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; pusg=${pusg/\%/};
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; if [ $pusg -lt 80 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo SAFE
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo ALERT
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; done &lt; /tmp/$$.df
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;} &gt;&gt; $logfile
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	34.创建数据库及数据表脚本
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	USER="root"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PASS="123456"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	DB="test1"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	TABLE="test1"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $USER -p$PASS &lt;&lt;EOF 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	CREATE DATABASE $DB;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ $? -eq 0 ] &amp;&amp; echo Created $DB || echo $DB already exist
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $USER -p$PASS $DB &lt;&lt;EOF 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	CREATE TABLE $TABLE(
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	id int,
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	name varchar(100),
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mark int,
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	dept varchar(4)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ $? -eq 0 ] &amp;&amp; echo Created table $TABLE || echo Table $TABLE already exist
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或（传参）
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	USER="root"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PASS="123456"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	DB="$1"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	TABLE="$2"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ $# -ne 2 ]; # if传参的个数不等于2
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo "please input the db and table name.exp: {sh db table}" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [ "$1" -gt 0 -o "$2" -gt 0 ] 2&gt;/dev/null ;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo "please input the right name(not number).exp: {sh db table}" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $USER -p$PASS &lt;&lt;EOF 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	CREATE DATABASE $DB;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ $? -eq 0 ] &amp;&amp; echo Created $DB || echo $DB already exist
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mysql -u $USER -p$PASS $DB &lt;&lt;EOF 2&gt; /dev/null
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	CREATE TABLE $TABLE(
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	id int,
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	name varchar(100),
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	mark int,
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	dept varchar(4)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ $? -eq 0 ] &amp;&amp; echo Created table $TABLE || echo Table $TABLE already exist
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	35.将数据插入数据表：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	USER="root"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PASS="123456"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ $# -ne 1 ];
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo $0 DATAFILE
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; echo
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; exit 2
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	data=$1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	while read line;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;oldIFS=$IFS
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;IFS=.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;values=($line)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;values[1]="\"`echo ${values[1]} | tr ' ' '#' `\""
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;values[3]="\"`echo ${values[3]}`\""
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;query=`echo $(values[@]) | tr ' #' ', ' `
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;IFS=$oldIFS
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;mysql -u $USER -p$PASS students &lt;&lt;EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	INSERT INTO students VALUES($query);
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	EOF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done &lt; $data
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo Wrote data into DB
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/599">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL]shell scripts笔记(2)" href="http://www.showerlee.com/archives/599">http://www.showerlee.com/archives/599</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/599/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL]shell scripts笔记(1)</title>
		<link>http://www.showerlee.com/archives/597</link>
		<comments>http://www.showerlee.com/archives/597#comments</comments>
		<pubDate>Tue, 27 Aug 2013 10:57:42 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[SHELL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=597</guid>
		<description><![CDATA[自己没事总结了点基础的东西，以备不时之需。 一.判断式: 1.判断符号 &#38;&#38;及&#124;&#124; 检测tes [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	自己没事总结了点基础的东西，以备不时之需。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	一.判断式:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.判断符号 &amp;&amp;及||
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	检测test是否存在：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# test -e /haha
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	注：test是一个判断文件属性的命令，-e参数判断目录是否存在，执行结果不会显示任何信息，但最后我们可以透过$?或&amp;&amp;及||来展现整个结果
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# test -e /haha &amp;&amp; echo "exist" ||echo "not exist"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	注: -f参数判断是否为文件，-d判断是否为目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1).让使用者输入一个文件名，判断这个文件名是否存在，若不存在给予一个filename does not exist的信息，并中断程序。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2).若这个文档存在，则判断他是文档还是目录，结果输出filename is regular file 或 filename is directory
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3).判断执行者对这个文件或目录所拥有权限，并输出权限目录：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh05.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 判断是否输入字符串:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo -e "Please input a filename,I will check the filename's type and permission. \n\n"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Input afilename:"filename
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -z $filename &amp;&amp; echo "You must input a filename." &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 判断文件是否存在,若不存在则提示并退出
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test ! -e $filename &amp;&amp; echo "The filename `$filename` do not exist" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 判断文件类型和属性:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -f $filename &amp;&amp; filetype="regulare file"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -d $filename &amp;&amp; filetype="directory"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -r $filename &amp;&amp; perm="readable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -w $filename &amp;&amp; perm="$perm writable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -x $filename &amp;&amp; perm="$perm executable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# 输出信息：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The filename:$filename is a $filetype"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "And the permissions are:$perm"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.判断符号[]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	判断$HOME变量是否为空:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# [ -z "$HOME" ];echo $?
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	注: 中括号因为用在很多包括通配符，正则表达式中，所以用在shell判别式时，为了与其他用法区分，必须在括号两端用"空格"间隔。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	判断两个变量是否相同
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# [ "$HOME" == "$MAIL" ]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.当执行一个程序时，程序会让用户选择Y或N
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.如果用户输入Y或y时，就显示OK continue
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.如果用户输入n或N时，显示oh,interrupt!
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.如果输入其他字符，就显示 I don't know what fucking your choice is
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	利用[] &amp;&amp; ||实现
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh06.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please input (Y/N):" yn
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	["$yn" == "Y" -o "$yn" == "y" ] &amp;&amp; echo "OK,continue" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	["$yn" == "N" -o "$yn" == "n" ] &amp;&amp; echo "oh,interrupt!" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "I don't know what fucking your choice is" &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	传参：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.程序文件名为何？
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.共有几个参数？
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.若参数个数小雨2则告知使用者参数数量太少
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.全部的参数为何？
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	5.第一个参数为何？
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	6.第二个参数为何?
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh07.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The script name is &nbsp; ==&gt; $0"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Total parameter number is &nbsp; &nbsp;==&gt; $#"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[ "$#" -lt 2 ] &amp;&amp; echo "The number of parameter is less than 2. Stop here." &amp;&amp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Your whole parameter is ==&gt; $@"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The 1st parameter &nbsp;==&gt; $1"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The 2st parameter &nbsp;==&gt; $2"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	条件判断:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	利用if...then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sh06修改版：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh08.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please input (Y/N):" yn
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ "$yn" == "Y" ] || [ "$yn" == "y" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; echo "OK,continue"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$yn" == "N" ] || [ "$yn" == "n" ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;echo "oh,interrupt!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "I don't know what fucking your choice is"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例1：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.判断$1是否为hello,如果是，显示 hello,how are you?
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.如果没加参数，提示用户必须使用参数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.如果加入的参数不是hello,就提示用户只能用hello作为参数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh09.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ "$1" == "hello" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Hello,how are you?"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [ "$1" == "" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "You must input parameters,example:{$0 someword}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The only parameter is 'hello',example:{$0 hello}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例2：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	判断主机常见21,22,25,80是否开启
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh10.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PORT=$(netstat -tunl |grep "$1"| sed -n '1p' | awk '{print $4}'| sed 's/^.*://g')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	VAR=$(echo "$1" |bc 2&gt;/dev/null)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ "$1" == "" ]; then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Please input a port.example:{sh $0 80}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$VAR" != "$1" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Please input the right port.example:{sh $0 80}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$PORT" == "21" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "ftp is running in your system"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$PORT" == "22" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "ssh is running in your system"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$PORT" == "25" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "smtp is running in your system"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;elif [ "$PORT" == "80" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "www is running in your system"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;else
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "the port:$1 is not running"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	利用if...esac判断
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sh09修改版：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh11.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	case $1 in
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	"hello")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Hello,how are you?"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	"")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "You must input parameters,example:{sh $0 someword}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	*)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Usage:{sh $0 hello}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	esac
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例2:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh12.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	case $1 in
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"one")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Your choice is ONE"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"two")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Your choice is TWO"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"three")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Your choice is "THREE"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; *)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Usage $0 {one|two|three}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	esac
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function功能
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例1：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh13.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function printit(){
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo -n "Your choice is" # -n表示不断行在同行显示
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "This program will print your selection!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	case $1 in
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"one")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit;echo $1 | tr 'a-z' 'A-Z' # 将参数做大小写转换
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"two")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit;echo $1 | tr 'a-z' 'A-Z'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"three")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit;echo $1 | tr 'a-z' 'A-Z'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; *)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Usage $0 {one|two|three}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	esac
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例1变种：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh14.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	function printit(){
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo &nbsp;"Your choice is $1"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	}
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "This program will print your selection!"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	case $1 in
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"one")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit 1 # printit 后可接参数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"two")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit 2
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;"three")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	printit 3
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; *)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "Usage $0 {one|two|three}"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	esac
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	while do done,until do done(不定循环)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh15.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	while [ "$yn" != "yes" -a "$yn" != "YES" ]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;read -p "Please input yes/YES to stop this program:" yn
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "OK,you input the correct answer."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh16.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	until [ "$yn" == "yes" -o "$yn" == "YES" ]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;read -p "Please input yes/YES to stop this program:" yn
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "OK,you input the correct answer."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	计算1+2+...+100=?
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh17.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	s=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	i=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	while [ "$i" != "100" ]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	i=$($i+1)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	s=$($s+$i)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The result of '1+2+3+...+100'=" $s
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for...do...done (固定循环)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh18.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for animal in dog cat elephant
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "There are ${animal}s..."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh19.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	users=$(cat /etc/passwd | awk 'BEGIN {FS=":"} {print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for username in $users
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	id $username
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# finger $username
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例1：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	利用for循环ping网内主机状态
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh20.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	network="172.24.30"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for host in $(seq 1 254)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;ping -c 1 -w 1 ${network}.${host}&amp;&gt; /dev/null &amp;&amp; result=1 || result=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;case "$result" in
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;"1")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Server ${network}.${host} is UP."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp;"0")
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Server ${network}.${host} is DOWN."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;;;
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp;esac
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例2:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	让用户输入某个文件名，找出该目录内的文件名的权限
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh21.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please input a directory:" dir
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if[ "$dir" == "" -o ! -d "$dir" ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The $dir is NOT exist in your systemn."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	exit 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	filelist=$(ls $dir)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for filename in $filelist
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	perm=""
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -r "$dir/$filemane" &amp;&amp; perm="$perm readable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -w "$dir/$filename" &amp;&amp; perm="$perm writable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	test -x "$dir/$filename" &amp;&amp; perm="$perm executable"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The file $dir/$filename's permission is ${perm}."
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi sh22.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please input a number,I will count for 1+2+..+{your_input}:" nu
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	s=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for((i=1;i&lt;=$nu;i=i+1))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;s=$(($s+$i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The result of '1+2+3+...+$nu' is ===&gt; $s"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	debug
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sh -x sh22.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	习题
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	建立一个script,当你执行script时，该script可以显示:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.你目前的身份(whoami)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.你锁在目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi test01.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo -e "Your name is $(whoami)"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo -e "The current directory is $(pwd)"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	让用户输入一个数字，程序可以由1+2+3+....一直累加到用户输入的数字为止
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi test02.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	read -p "Please input a number,I will count for 1+2+...+{your_input}:" nu
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	s=0
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for (( i=1;i&lt;=$nu;i=i+1 ))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;s=$(($s+$i))
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The answser of "1+2+...+$nu =" $s"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	写一个程序
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.先查看/root/test/logical这个文件是否存在
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.若不存在，则建立一个文档，使用touch建立，建立完成后离开
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.如果存在，判断是否为文件，若为文件则删除后建立一个目录，名为logical,之后离开
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.如果存在，则移除此目录
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi test02.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	cd /root/test
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	if [ ! -e logical ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;touch logical
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Just make a file logical"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [ -e logical ]&amp;&amp;[ -f logical ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;rm -rf logical &amp;&amp; mkdir logical
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Just make a directory logical"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	elif [ -e logical ]&amp;&amp;[ -d logical ];then
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;rm -rf logical
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;echo "Just delete a directory logical"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&nbsp; &nbsp; &nbsp; &nbsp;exit 1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	fi
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	写一个程序，将/etc/passwd的第一栏取出，而每一栏都以一行字符串[The 1 account is "root"]来显示，那个1表示行数。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi test04.sh
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	export PATH
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	var=$(cat /etc/passwd | awk 'BEGIN {FS=":"} {print $1}')
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for account in $var
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	do
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	declare -i i=$i+1
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	echo "The $i account is $account"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	done
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	---------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	awk 'BEGIN {FS=":"} {printf "The %s account is %s\n",NR,$1}' /etc/passwd
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#!/bin/bash
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	awk 'BEGIN {FS=":"} {print "The " NR " account is "$1}' /etc/passwd
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	----------------------</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/597">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL]shell scripts笔记(1)" href="http://www.showerlee.com/archives/597">http://www.showerlee.com/archives/597</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/597/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL]正则表达式笔记(1)</title>
		<link>http://www.showerlee.com/archives/595</link>
		<comments>http://www.showerlee.com/archives/595#comments</comments>
		<pubDate>Tue, 27 Aug 2013 10:56:38 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[SHELL]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=595</guid>
		<description><![CDATA[最近一直在研究shell脚本这块，刚好闲下来整了下自己手头上比较好的资料中的一些范例，以下是我整理的鸟哥私房菜 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	最近一直在研究shell脚本这块，刚好闲下来整了下自己手头上比较好的资料中的一些范例，以下是我整理的鸟哥私房菜里面正则表达式里面比较基础的一些语法详解，适合新手查阅。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	首先先复制一段范例：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# vi regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	"Open Source" is a good mechanism to develop programs.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	apple is my favorite food.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Football game is not use feet only.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	this dress doesn't fit me.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	However, this dress is about $ 3183 dollars.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	GNU is free air not free beer.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Her hair is very beauty.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	I can't finish the test.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Oh! The soup taste good.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	motorcycle is cheap than car.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	This window is clear.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	the symbol '*' is represented as start.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Oh!My god!
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	The gd software is a library for drafting programs.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	You are the best is mean you are the no. 1.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	The world &lt;Happy&gt; is the same with "glad".
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	I like dog.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	google is the best tools for search keyword.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	goooooogle yes!
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	go! go! Let's go.
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# I am VBird
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	--------------------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	设置语系为C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	#export LANG=C
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>grep</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.搜寻特定字符串"the"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	注: n为显示行号
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'the' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.反向搜寻特定字符串"the"
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -vn 'the' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.取得任意大小写"the"的这个字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -in 'the' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.利用括号 [] 来搜寻集合字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	搜索test或taste这两个单词时，发现他们有共同的't?st',所以可以这么搜寻
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 't[ae]st' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	这样其实就是在找t[a]st和t[e]st这两个分开的字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如果搜索有 oo 的字符时，则可以使用：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'oo' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如果搜索oo时不想搜到 oo 前面有 g 的话，我们可以利用反向选择[^]来达成:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[^g]oo' &nbsp;regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如果搜索oo前面不想有小写字符，则：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[^a-z]oo' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注: 大写英文/小写英文/数字 可以使用 [a-z]/[A-Z]/[0-9]等方式来书写，也可以写在一起</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">[a-zA-Z0-9]表示要求字符串是数字以及英文</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	如果我们要取得有数字的那行,则：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[0-9]' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：但考虑到语系对编码顺序的影响，因此除了连续编码使用减号[-]外，也可以用[:lower:]代替a-z 以及 [:digit:] 代替0-9 使用</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[^[:lower:]]oo' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[[:digit:]]' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	5.显示行首为'the'的字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '^the' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	显示行首是小写字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '^[a-z]' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	6.显示行尾为点 . 的那一行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '\.$' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	7.显示5-9行数据
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat -An regular_express.txt |head -n 10 |tail -n 6
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	8.显示空白行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '^$' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	9.找出g??d字符串，起头g结束d的四个字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'g..d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	10. o*代表空字符(就是有没有字符都可以)或者一个到N个o字符，所以grep -n 'o*' regular_express.txt就会把所有行全部打印出来，
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	11.oo*代表o+空字符或者一个到N个o字符,所以grep -n 'oo*' regular_express.txt就会把o,oo,ooo等的行全部打印出来
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	12."goo*g"代表gog,goog,gooog...等
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'goo*g' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	13.找出含g...g字符串的行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注: .代表任意字符, .*则就代表空字符或者一个到N个任意字符</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'g.*g' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	14.找出含有数字的行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n '[0-9][0-9]*' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	或# grep -n '[0-9]' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	15.找出含两个o的字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:{}因为在shell里有特殊意义，所以需要加跳脱符\来让其失去意义</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'o\{2\}' &nbsp;regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	找出g后含2到5个o然后以g结尾的字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'go\{2,5\}g' &nbsp;regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	找出g后含2以上的o然后以g结尾的字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -n 'go\{2,\}g' &nbsp;regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>总结：</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	^word &nbsp; &nbsp; 表示带搜寻的字符串(word)在行首
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	word$ &nbsp; &nbsp; 表示带搜寻的字符串(word)在行尾
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	. &nbsp; &nbsp; &nbsp; &nbsp; 表示1个任意字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	\ &nbsp; &nbsp; &nbsp; &nbsp; 表示转义字符，在特殊字符前加\会将原本的特殊字符意义去除
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	* &nbsp; &nbsp; &nbsp; &nbsp; 表示重复0到无穷多个前一个RE(正则表达式)字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[list] &nbsp; &nbsp;表示搜索含有list的字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[n1-n2] &nbsp; 表示搜索指定的字符串范围,例如[0-9] [a-z] [A-Z]等
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	[^list] &nbsp; 表示反向字符串的范围,例如[0-9]表示非数字字符，[A-Z]表示非大写字符范围
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	\{n,m\} &nbsp; 表示找出n到m个前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	\{n,\} &nbsp; &nbsp;表示n个以上的前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>egrep总结:</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	+ &nbsp; &nbsp;表示重复一个或一个以上的前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	范例:egrep 'go+d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示搜寻(god)(good)(goood)...等等字符串，o+代表[一个以上的o]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	? &nbsp; &nbsp;表示重复零个或一个的前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	范例:egrep 'go?d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示搜寻(gd)(god)字符串，o?代表[空的或1个o]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:egrep下'go+d'和'go?d'的结果集合就等于grep下的'go*d'</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	| &nbsp; &nbsp;表示用或(or)的方式找出数个字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	范例:egrep 'gd|good|dog' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示搜寻(gd)或(god)或(god)字符串，|代表或
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	() &nbsp; &nbsp;表示找出群组字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	范例:egrep 'g(la|oo)d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示搜寻(glad)或(good)字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	() &nbsp; &nbsp;+表示找出多个重复群组的判别
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	范例: echo 'AxyzxyzxyzxyzxyzC'|egrep 'A(xyz)+C'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示搜寻开头是A结尾是C，中间有一个以上的'xyz'字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>sed:</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	插入：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.将/etc/passwd 的内容列出并打印行号，同时,将2-5行删除显示
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2,5d'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注: sed是sed -e的简写, 后接单引号</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	同上删除第2行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2d'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	同上删除第三行到最后一行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '3,$d'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.在第二行后加上一行test
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2a test'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	在第二行前加上一行test
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2i test'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	在第二行后加入两行test
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2a test \
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	&gt; test'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	替换行:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.将2-5行内容取代为 No 2-5 number
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd | sed '2,5c No 2-5 number'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4 列出/etc/passwd 内第5-7行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# nl /etc/passwd |sed -n '5,7p'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	替换字符串:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	sed 's/被替换字符串/新字符串/g'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.获取本机IP的行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# /sbin/ifconfig eth0 |grep 'inet addr'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	将IP前面的部分予以删除
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# /sbin/ifconfig eth0 |grep 'inet addr'| sed 's/^.*addr://g'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	将IP后面的部分删除
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# /sbin/ifconfig eth0 |grep 'inet addr'| sed 's/^.*addr://g'| sed 's/Bcast:.*$//g'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	192.168.100.74
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.用grep将关键词MAN所在行取出来
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/man.config |grep 'MAN'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	删除批注行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/man.config |grep 'MAN'| sed 's/^#.*$//g'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	删除空白行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/man.config |grep 'MAN'| sed 's/^#.*$//g'| sed '/^$/d'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3.利用sed将regular_express.txt内每一行若为.的换成!
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：-i参数会直接修改文本，而并非直接输出</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sed -i 's/.*\.$/\!/g' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4.利用sed在文本最后一行加入 #This is a test
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注: $代表最后一行 a代表行后添加</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sed -i '$a #This is a test' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	将selinux配置文件enforcing改成disabled
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# sed -i '6,6c SELINUX=disabled' /etc/selinux/config
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	延伸正规表示法:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# grep -v '^$' regular_express.txt |grep -v '^#'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	延伸写法:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# egrep -v '^$'|'^#' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1. +表示重复一个或一个以上的前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如：egrep -n 'go+d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	普通写法: grep -n 'goo*d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2. ?表示重复零个或一个前一个RE字符
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如: egrep -n 'go?d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	3. |表示用或的方式找出数个字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如: egrep -n 'gd|good' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	4. ()表示找出群组字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如: egrep -n 'g(la|oo)d' regular_express.txt
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	也就是搜寻(glad)或good这两个字符串
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	5. ()+多个重复群组判别
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例如: echo 'AxyzxyzxyzxyzC'|egrep 'A(xyz)+C'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	也就是要找开头是A结尾是C 中间有一个以上的'xyz'字符串的意思
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>awk:</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1.用last取出登陆数据前五行
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# last -n 5
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	取出账号与登陆者IP，且账号与IP之间以TAB隔开
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# last -n 5 |awk '{print $1 "\t" $3}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注:$1代表用空格或TAB隔开的第一个字段，以此类推。。</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; $0代表该行全部字段</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# last -n 5 |awk '{print $1 "\t lines:" NR "\t columes:" NF}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注: NF代表每一行的$0的字段总数</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;NR代表目前awk所处的是第几行数据</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">&nbsp; &nbsp;FS代表目标分隔符，默认为空格</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	2.在/etc/passwd中以:来作为分段字符，则我们要查阅第三栏小于10以下的数据，并只列出账号与第三栏
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/passwd | awk '{FS=":"} $3&lt;10 {print $1 "\t \t"$3}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<span style="color:#FF0000;">注：查询结果未显示第一行数据，是因为我们虽然定义了FS=":" 但却只能在第二行生效</span>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	想读取第一行就需要BEGIN这个关键词:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# cat /etc/passwd | awk 'BEGIN {FS=":"} $3&lt;10 {print $1 "\t \t"$3}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	<strong>df:</strong>
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	比较两个文件的差异:
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# diff /etc/rc3.d/ /etc/rc5.d/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Only in /etc/rc3.d/: K30spice-vdagentd
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	Only in /etc/rc5.d/: S70spice-vdagentd
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	-------------------
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	实例：
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	1。统计TCP连接状态
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	# netstat -na | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	/^tcp/
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	过滤出以tcp开头的行，“^”为正则表达式用法，以...开头，这里是过滤出以tcp开头的行。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	S[]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	定义了一个名叫S的数组，在awk中，数组下标通常从 1 开始，而不是 0。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	NF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	当前记录里域个数，默认以空格分隔，如上所示的记录，NF域个数等于
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	$NF
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示一行的最后一个域的值，如上所示的记录，$NF也就是$6，表示第6个字段的值，也就是SYN_RECV或TIME_WAIT等。
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	S[$NF]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示数组元素的值，如上所示的记录，就是S[TIME_WAIT]状态的连接数
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	++S[$NF]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	表示把某个数加一，如上所示的记录，就是把S[TIME_WAIT]状态的连接数加一
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	结果就是显示S数组中最终的数组值
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	例：S[TIME_WAIT]=最终值 S[TESTABLISHED]=最终值
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	END
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	for(key in S)
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	遍历S[]数组
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	print key,”\t”,S[key]
</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
	打印数组的键和值，中间用\t制表符分割，显示好一些。</p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/595">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL]正则表达式笔记(1)" href="http://www.showerlee.com/archives/595">http://www.showerlee.com/archives/595</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/595/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SHELL]备份系统文件并邮件发送</title>
		<link>http://www.showerlee.com/archives/570</link>
		<comments>http://www.showerlee.com/archives/570#comments</comments>
		<pubDate>Tue, 27 Aug 2013 09:31:52 +0000</pubDate>
		<dc:creator>showerlee</dc:creator>
				<category><![CDATA[SHELL]]></category>
		<category><![CDATA[MUTT]]></category>

		<guid isPermaLink="false">http://www.showerlee.com/?p=570</guid>
		<description><![CDATA[1.安装MUTT邮件客户端 # yum install mutt -y 2.创建脚本 # vi /etc/rc [&#8230;]]]></description>
				<content:encoded><![CDATA[<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		1.安装<a href="http://www.showerlee.com/archives/tag/mutt" title="查看MUTT中的全部文章" class="tag_link">MUTT</a>邮件客户端
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# yum install mutt -y
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		2.创建脚本
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# vi /etc/rc.d/mail_to_bak_daily.sh
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">(版本一)</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		------------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		#!/bin/bash
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# =========================================================
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 请输入，你想让备份数据放置到哪个独立的目录区
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		basedir=/backup/daily
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# =========================================================
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		PATH=/bin:/usr/bin:/sbin:/usr/sbin::/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin;
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export PATH
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export LANG=C
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义数据库信息
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		user=root
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		passwd=123456
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义mysql备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysql_db_bak=$basedir/mysql_db_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		[ ! -d "$mysql_db_bak" ] &amp;&amp; mkdir -p $mysql_db_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义www备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_src_bak=$basedir/www_src_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		[ ! -d "$www_src_bak" ] &amp;&amp; mkdir -p $www_src_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义邮件附件路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_attach_mysql=$mysql_db_bak/wordpress.sql
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_attach_www=$www_src_bak/www.tar.bz2
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义邮件标题
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_subject="www.example.com_daily_backup"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;"># 注：这里的标题之间的字符不能有空格，如有空格会按照邮件名发出,例如daily@www.example.com,backup@www.example.com 本例以下划线代替</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义邮件内容
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content=/tmp/mail_content.txt
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_code="send MySQL_BAK and WWW_SRC to you at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义邮件地址
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_address="test@example.com"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 1. 备份MySQL (数据库目录在/usr/local/mysql)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysqldump -u $user -p$passwd --opt --skip-lock-tables &nbsp;--flush-logs &nbsp;--database wordpress &gt; $mysql_db_bak/wordpress.sql
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 2.备份www源代码:
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cd /usr/local
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		tar -jpcf $www_src_bak/www.tar.bz2 www
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 3.邮件正文
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cd /tmp
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		echo $mail_code &gt; $mail_content
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 4.发送附件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		yum install mutt -y
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cat $mail_content |mutt -s $mail_subject -a $mail_attach_mysql -a $mail_attach_www -- $mail_address
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 5.清除临时文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cd /tmp
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp;rm -rf $mail_content
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		---------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">(版本二) 推荐</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">注：此版本将附件分开发送，对邮箱同时发送多个大附件有收不到的几率的情况，可按照如下版本重新配置</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		--------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		#!/bin/bash
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		PATH=/bin:/usr/bin:/sbin:/usr/sbin::/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin;
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export PATH
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export LANG=C
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 系统文件备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		basedir=/backup/daily
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 数据库信息
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		user=root
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		passwd=123456
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义mysql备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysql_db_bak=$basedir/mysql_db_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ ! -d "$mysql_db_bak" ];
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp;then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; mkdir -p $mysql_db_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义www备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_src_bak=$basedir/www_src_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ ! -d "$www_src_bak" ];
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp;then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; mkdir -p $www_src_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 备份文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysql_bak=$mysql_db_bak/wordpress.sql.gz
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_bak=$www_src_bak/www.tar.bz2
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义备份文件作为附件的数组
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		all_bak=($mysql_bak $www_bak)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件标题
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_subject="www.showerlee.com_daily_backup"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件内容
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_mysql="send MySQL_BAK at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_www="send WWW_SRC at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义内容数组
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content=("$mail_content_mysql" "$mail_content_www")
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件地址
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_address="test@example.com"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 1. 备份MySQL (数据库目录在/usr/local/mysql)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysqldump -u $user -p$passwd --opt --skip-lock-tables &nbsp;--flush-logs &nbsp;--database wordpress | gzip &gt; $mysql_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 2.备份www源代码:
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cd /usr/local
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp;tar -jpcf $www_bak www
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 3.发送附件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		yum install mutt -y
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		for((i=0; i!=${#all_bak[@]}; ++i))
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		{
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp;echo ${mail_content[i]} | mutt -s $mail_subject $mail_address -a ${all_bak[i]}
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		}
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 4.清理mutt临时文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cat /dev/null &gt; ~/sent
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		--------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">(版本三)</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">实现rar分割并附件发送</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">推荐附件超过50M的用户使用</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		--------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		#/bin/bash
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		PATH=/bin:/usr/bin:/sbin:/usr/sbin::/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin;
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export PATH
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		export LANG=C
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 系统文件备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		basedir=/data/backup/daily
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 数据库信息
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		user=root
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		passwd=123456
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 安装rar
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		rar=$(rar | grep RAR | awk '{print $1}'| sed -n '1p')
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ $? != 0 ];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; rar=null
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		sys_version=$(uname -m)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		rar_path="/usr/local/rar"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ $rar != 'RAR' ];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; if [ $sys_version == 'x86_64' ];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; wget <a href="http://www.rarlab.com/rar/rarlinux-x64-4.2.0.tar.gz" rel="nofollow">http://www.rarlab.com/rar/rarlinux-x64-4.2.0.tar.gz</a>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; tar zxvf rarlinux-x64-4.2.0.tar.gz
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; mv rar $rar_path
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; cd $rar_path
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; make
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; else
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; wget <a href="http://www.rarlab.com/rar/rarlinux-4.2.0.tar.gz" rel="nofollow">http://www.rarlab.com/rar/rarlinux-4.2.0.tar.gz</a>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; tar zxvf rarlinux-4.2.0.tar.gz
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; mv rar $rar_path
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; cd $rar_path
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; &nbsp; make
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义mysql备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysql_db_bak=$basedir/mysql_db_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ ! -d "$mysql_db_bak" ];
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp;mkdir -p $mysql_db_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义www备份路径
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_src_bak=$basedir/www_src_bak/$(date +%F_%H%M)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ ! -d "$www_src_bak" ];
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp;mkdir -p $www_src_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 备份文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysql_bak=$mysql_db_bak/test.sql.gz
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_bak=$www_src_bak/www.rar
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_bak_part1=$www_src_bak/www.part1.rar
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_bak_part2=$www_src_bak/www.part2.rar
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		www_bak_part3=$www_src_bak/www.part3.rar
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义附件数组
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		all_bak=($mysql_bak $www_bak_part1 $www_bak_part2 $www_bak_part3)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件标题
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_subject="showerlee.com_and_yanwenbo.cn_daily_backup"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件内容
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_mysql="send MySQL_BAK at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_www_p1="send WWW_SRC rarball part1 at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_www_p2="send WWW_SRC rarball part2 at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content_www_p3="send WWW_SRC rarball part3 at $(date +%F_%H%M)"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 定义内容数组
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_content=("$mail_content_mysql" "$mail_content_www_p1" "$mail_content_www_p2" "$mail_content_www_p3")
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 邮件地址
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_address1="showerlee@vip.qq.com"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mail_address2="kevinywb@vip.qq.com"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 1. 备份MySQL
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		mysqldump -u $user -p$passwd --opt --skip-lock-tables &nbsp;--flush-logs &nbsp;--database test | gzip &gt; $mysql_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 2.备份www源代码(分割若干个45m的tar包)
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ -z $rar ];then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp; &nbsp; exit 0
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cd /data
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		rar a -v45000k $www_bak www
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 3.发送附件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		for((i=0; i!=${#all_bak[@]}; ++i))
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		{
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		if [ -f ${all_bak[i]} ]; then
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp;echo ${mail_content[i]} | mutt -s $mail_subject $mail_address1 $mail_address2 -a ${all_bak[i]}
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		else
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp;echo ${mail_content[i]} | mutt -s $mail_subject $mail_address1 $mail_address2 -a $www_bak
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		&nbsp; &nbsp;break
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		fi
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		}
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 4.清理mutt临时文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		cat /dev/null &gt; ~/sent
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 5.清理1个月前的备份文件
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		dir=/data/backup/daily/
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		find $dir -mtime +30 -type d -name "201*" -print |xargs -i rm -rf {} 2&gt;/dev/null
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# 6.释放系统缓存
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		echo 1 &gt; /proc/sys/vm/drop_caches
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		--------------------------------------------------------
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">注:如果报如下错误</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">------------------</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">postdrop: warning: uid=0: File too large</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">sendmail: fatal: root(0): message file too big</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">Error sending message, child exited 75 (Deferred.).</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">Could not send the message.</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">------------------</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">是由于超过系统默认发送附件大小，修改成如下大小即可（2G）</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# postconf -e "message_size_limit = 2048000000"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# postconf -e "mailbox_size_limit = 2048000000"
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		3.执行脚本
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		# sh /etc/rc.d/mail_to_bak_daily.sh
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">注：可利用 tail -f /var/log/maillog 查看发送日志</span>
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		4.测试结果如图：
	</p>
<p style="color:#555555;font-family:宋体, 'Arial Narrow', arial, serif;font-size:14px;background-color:#FFFFFF;">
		<span style="color:#FF0000;">注：附件较大请耐心等待</span>
	</p>
</p>
<p><a href="http://www.showerlee.com/wp-content/uploads/2013/08/115.png"><img onerror="javascript:this.src='http://www.showerlee.com/wp-content/themes/BYMT/images/images_error.jpg'" src="http://www.showerlee.com/wp-content/uploads/2013/08/115.png" alt="1" width="595" height="418" class="alignnone size-full wp-image-581" /></a></p>
<div>声明: 本文采用 <a rel="external" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" title="署名-非商业性使用-相同方式共享 3.0 Unported">CC BY-NC-SA 3.0</a> 协议进行授权</div><div>转载请注明来源：<a rel="external" title="DevOps技术分享" href="http://www.showerlee.com/archives/570">DevOps技术分享</a></div><div>本文链接地址：<a rel="external" title="[SHELL]备份系统文件并邮件发送" href="http://www.showerlee.com/archives/570">http://www.showerlee.com/archives/570</a></div>]]></content:encoded>
			<wfw:commentRss>http://www.showerlee.com/archives/570/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
