<?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>Mzsh &#187; linux</title>
	<atom:link href="http://www.phpblog.cn/archives/category/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://www.phpblog.cn</link>
	<description>昨夜的火光，今天的迷茫， 有情的背叛，无情的死亡。 山水远，只影向谁去？ 曼珠沙华，开在火中央....</description>
	<lastBuildDate>Wed, 19 May 2010 13:49:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>《Linux操作系统之奥秘》</title>
		<link>http://www.phpblog.cn/archives/416</link>
		<comments>http://www.phpblog.cn/archives/416#comments</comments>
		<pubDate>Thu, 25 Mar 2010 12:34:45 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.phpblog.cn/?p=416</guid>
		<description><![CDATA[
前段时间看到同事买了此书，我当时随意翻了一会儿，也挺有兴趣，于是也买了一本，最近看了一些，觉得此书挺不错，分享给大家，感兴趣的朋友可以看看。
PS：此书讲的比较深奥，需要读者有一定的Linux基础，总之我看的是云里雾里的。
豆瓣地址：http://book.douban.com/subject/3078298/]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-417" title="s3414472" src="http://www.phpblog.cn/wp-content/uploads/2010/03/s3414472.jpg" alt="" width="200" height="248" /></p>
<p>前段时间看到同事买了此书，我当时随意翻了一会儿，也挺有兴趣，于是也买了一本，最近看了一些，觉得此书挺不错，分享给大家，感兴趣的朋友可以看看。</p>
<p>PS：此书讲的比较深奥，需要读者有一定的Linux基础，总之我看的是云里雾里的。</p>
<p>豆瓣地址：<a href="http://book.douban.com/subject/3078298/" target="_blank">http://book.douban.com/subject/3078298/</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/416/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>彩色版的svn diff</title>
		<link>http://www.phpblog.cn/archives/318</link>
		<comments>http://www.phpblog.cn/archives/318#comments</comments>
		<pubDate>Wed, 24 Feb 2010 08:03:43 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.phpblog.cn/?p=318</guid>
		<description><![CDATA[
首先，我们需要安装ColorDiff这个小工具。
官方网站：http://colordiff.sourceforge.net
下载最新版本
下载后，解压缩并安装：
tar xzvf colordiff-1.0.9.tar.gz
cd colordiff-1.0.9
sudo make install
然后在~/.bashrc中加一句：
alias svndiff='svn diff --diff-cmd=colordiff'
之后，使用svndiff这个命令就可以得到彩色的svn diff结果，分页可以使用less -R。
用diff命令时，也可以通过管道调用：
diff file1.txt file2.txt &#124; colordiff]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" src="http://colordiff.sourceforge.net/screen2.jpg" alt="" width="592" height="320" /></p>
<p>首先，我们需要安装ColorDiff这个小工具。</p>
<p>官方网站：<a href="http://colordiff.sourceforge.net" target="_blank">http://colordiff.sourceforge.net</a></p>
<p><a href="http://colordiff.sourceforge.net/colordiff-1.0.9.tar.gz">下载最新版本</a></p>
<p>下载后，解压缩并安装：</p>
<blockquote><p>tar xzvf colordiff-1.0.9.tar.gz<br />
cd colordiff-1.0.9<br />
sudo make install</p></blockquote>
<p>然后在~/.bashrc中加一句：</p>
<blockquote><p>alias svndiff='svn diff --diff-cmd=colordiff'</p></blockquote>
<p>之后，使用svndiff这个命令就可以得到彩色的svn diff结果，分页可以使用less -R。</p>
<p>用diff命令时，也可以通过管道调用：</p>
<blockquote><p>diff file1.txt file2.txt | colordiff</p></blockquote>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/318/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>域名指向查询功能 - dig</title>
		<link>http://www.phpblog.cn/archives/222</link>
		<comments>http://www.phpblog.cn/archives/222#comments</comments>
		<pubDate>Fri, 27 Nov 2009 14:34:13 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.phpblog.cn/blog/?p=222</guid>
		<description><![CDATA[好久没写blog了，前段时间一直在忙着开发uchome手机版，今天来跟大家分享一个小技巧。
linux下有个很有用的工具dig，用它可以查看到某个域名的指向情况。例如，查看www.sina.com.cn的域名指向：
-bash-3.1$ dig http://www.sina.com.cn
; &#60;&#60;&#62;&#62; DiG 9.3.3rc2 &#60;&#60;&#62;&#62; http://www.sina.com.cn
;; global options:  printcmd
;; Got answer:
;; -&#62;&#62;HEADER&#60;&#60;- opcode: QUERY, status: NOERROR, id: 45409
;; flags: qr rd ra; QUERY: 1, ANSWER: 12, AUTHORITY: 3, ADDITIONAL: 3
;; QUESTION SECTION:
;www.sina.com.cn.               IN      A
;; ANSWER SECTION:
http://www.sina.com.cn.        57      IN      CNAME   jupiter.sina.com.cn.
jupiter.sina.com.cn.    599     IN      CNAME   newscd.sina.com.cn.
newscd.sina.com.cn.     42      IN      A       221.236.31.150
newscd.sina.com.cn.     42      IN      A       221.236.31.151
newscd.sina.com.cn.     42      [...]]]></description>
			<content:encoded><![CDATA[<p>好久没写blog了，前段时间一直在忙着开发uchome手机版，今天来跟大家分享一个小技巧。</p>
<p>linux下有个很有用的工具dig，用它可以查看到某个域名的指向情况。例如，查看www.sina.com.cn的域名指向：</p>
<blockquote><p>-bash-3.1$ dig <a href="http://www.sina.com.cn" rel="nofollow">http://www.sina.com.cn</a></p>
<p>; &lt;&lt;&gt;&gt; DiG 9.3.3rc2 &lt;&lt;&gt;&gt; <a href="http://www.sina.com.cn" rel="nofollow">http://www.sina.com.cn</a><br />
;; global options:  printcmd<br />
;; Got answer:<br />
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 45409<br />
;; flags: qr rd ra; QUERY: 1, ANSWER: 12, AUTHORITY: 3, ADDITIONAL: 3</p>
<p>;; QUESTION SECTION:<br />
;www.sina.com.cn.               IN      A</p>
<p>;; ANSWER SECTION:<br />
<a href="http://www.sina.com.cn.       " rel="nofollow">http://www.sina.com.cn.       </a> 57      IN      CNAME   jupiter.sina.com.cn.<br />
jupiter.sina.com.cn.    599     IN      CNAME   newscd.sina.com.cn.<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.150<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.151<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.152<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.140<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.141<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.142<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.143<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.144<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.145<br />
newscd.sina.com.cn.     42      IN      A       221.236.31.149</p>
<p>;; AUTHORITY SECTION:<br />
sina.com.cn.            11027   IN      NS      ns3.sina.com.cn.<br />
sina.com.cn.            11027   IN      NS      ns1.sina.com.cn.<br />
sina.com.cn.            11027   IN      NS      ns2.sina.com.cn.</p>
<p>;; ADDITIONAL SECTION:<br />
ns2.sina.com.cn.        31983   IN      A       61.172.201.254<br />
ns3.sina.com.cn.        22464   IN      A       202.108.44.55<br />
ns1.sina.com.cn.        39791   IN      A       202.106.184.166</p>
<p>;; Query time: 35 msec<br />
;; SERVER: 61.139.2.69#53(61.139.2.69)<br />
;; WHEN: Fri Nov 27 22:23:44 2009<br />
;; MSG SIZE  rcvd: 338</p></blockquote>
<p>在这里可以看到www.sina.com.cn这个域名的指向情况。www.sina.com.cn的CNAME指向jupiter.sina.com.cn，而jupiter.sina.com.cn的CNAME又指向newscd.sina.com.cn，最后newscd.sina.com.cn的A记录指向了多个IP地址（多台服务器），这样做用来实现DNS负载均衡。</p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/222/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>top Load average</title>
		<link>http://www.phpblog.cn/archives/181</link>
		<comments>http://www.phpblog.cn/archives/181#comments</comments>
		<pubDate>Thu, 16 Jul 2009 01:36:59 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=181</guid>
		<description><![CDATA[在Linux系统中，uptime、w、top等命令都会有系统平均负载load average的输出，那么什么是系统平均负载呢？
系统平均负载被定义为在特定时间间隔内运行队列中的平均进程树。如果一个进程满足以下条件则其就会位于运行队列中：

 它没有在等待I/O操作的结果
 它没有主动进入等待状态(也就是没有调用'wait')
 没有被停止(例如：等待终止)

例如：
[root@www2 init.d]# uptime
7:51pm up 2 days, 5:43, 2 users, load average: 8.13, 5.90, 4.94
命令输出的最后内容表示在过去的1、5、15分钟内运行队列中的平均进程数量。
一般来说只要每个CPU的当前活动进程数不大于3那么系统的性能就是良好的，如果每个CPU的任务数大于5，那么就表示这台机器的性能有严重问题。对于上面的例子来说，假设系统有两个CPU，那么其每个CPU的当前任务数为：8.13/2=4.065。这表示该系统的性能是可以接受的。]]></description>
			<content:encoded><![CDATA[<p>在Linux系统中，uptime、w、top等命令都会有系统平均负载load average的输出，那么什么是系统平均负载呢？<br />
系统平均负载被定义为在特定时间间隔内运行队列中的平均进程树。如果一个进程满足以下条件则其就会位于运行队列中：</p>
<ul>
<li> 它没有在等待I/O操作的结果</li>
<li> 它没有主动进入等待状态(也就是没有调用'wait')</li>
<li> 没有被停止(例如：等待终止)</li>
</ul>
<p>例如：</p>
<blockquote><p>[root@www2 init.d]# uptime<br />
7:51pm up 2 days, 5:43, 2 users, load average: 8.13, 5.90, 4.94</p></blockquote>
<p>命令输出的最后内容表示在过去的1、5、15分钟内运行队列中的平均进程数量。<br />
一般来说只要每个CPU的当前活动进程数不大于3那么系统的性能就是良好的，如果每个CPU的任务数大于5，那么就表示这台机器的性能有严重问题。对于上面的例子来说，假设系统有两个CPU，那么其每个CPU的当前任务数为：8.13/2=4.065。这表示该系统的性能是可以接受的。</p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/181/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vim中ctags的用法</title>
		<link>http://www.phpblog.cn/archives/172</link>
		<comments>http://www.phpblog.cn/archives/172#comments</comments>
		<pubDate>Mon, 13 Jul 2009 05:24:07 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=172</guid>
		<description><![CDATA[[/home/brimmer/src]$ ctags -R
"-R"表示递归创建，也就包括源代码根目录下的所有子目录下的源程序。"tags"文件中包括这些对象的列表：

用#define定义的宏
枚举型变量的值
函数的定义、原型和声明
名字空间（namespace）
类型定义（typedefs）
变量（包括定义和声明）
类（class）、结构（struct）、枚举类型（enum）和联合（union）
类、结构和联合中成员变量或函数

VIM用这个"tags"文件来定位上面这些做了标记的对象，下面介绍一下定位这些对象的方法：
1) 用命令行。在运行vim的时候加上"-t"参数，例如：
[/home/brimmer/src]$ vim -t foo_bar
这个命令将打开定义"foo_bar"（变量或函数或其它）的文件，并把光标定位到这一行。
2) 在vim编辑器内用":ta"命令，例如：
:ta foo_bar
3) 最方便的方法是把光标移到变量名或函数名上，然后按下"Ctrl-]"。用"Ctrl-o"退回原来的地方。
注意：运行vim的时候，必须在"tags"文件所在的目录下运行。否则，运行vim的时候还要用":set tags="命令设定"tags"文件的路径，这样vim才能找到"tags"文件。
在函数中移动光标
[{ 转到上一个位于第一列的"{"
}] 转到下一个位于第一列的"{"
{   转到上一个空行
}   转到下一个空行
gd 转到当前光标所指的局部变量的定义
*   转到当前光标所指的单词下一次出现的地方
#   转到当前光标所指的单词上一次出现的地方]]></description>
			<content:encoded><![CDATA[<blockquote><p>[/home/brimmer/src]$ ctags -R</p></blockquote>
<p>"-R"表示递归创建，也就包括源代码根目录下的所有子目录下的源程序。"tags"文件中包括这些对象的列表：</p>
<ul>
<li>用#define定义的宏</li>
<li>枚举型变量的值</li>
<li>函数的定义、原型和声明</li>
<li>名字空间（namespace）</li>
<li>类型定义（typedefs）</li>
<li>变量（包括定义和声明）</li>
<li>类（class）、结构（struct）、枚举类型（enum）和联合（union）</li>
<li>类、结构和联合中成员变量或函数</li>
</ul>
<p>VIM用这个"tags"文件来定位上面这些做了标记的对象，下面介绍一下定位这些对象的方法：</p>
<p>1) 用命令行。在运行vim的时候加上"-t"参数，例如：</p>
<blockquote><p>[/home/brimmer/src]$ vim -t foo_bar</p></blockquote>
<p>这个命令将打开定义"foo_bar"（变量或函数或其它）的文件，并把光标定位到这一行。</p>
<p>2) 在vim编辑器内用":ta"命令，例如：</p>
<blockquote><p>:ta foo_bar</p></blockquote>
<p>3) 最方便的方法是把光标移到变量名或函数名上，然后按下"Ctrl-]"。用"Ctrl-o"退回原来的地方。</p>
<p>注意：运行vim的时候，必须在"tags"文件所在的目录下运行。否则，运行vim的时候还要用":set tags="命令设定"tags"文件的路径，这样vim才能找到"tags"文件。<br />
在函数中移动光标</p>
<p>[{ 转到上一个位于第一列的"{"</p>
<p>}] 转到下一个位于第一列的"{"</p>
<p>{   转到上一个空行</p>
<p>}   转到下一个空行</p>
<p>gd 转到当前光标所指的局部变量的定义</p>
<p>*   转到当前光标所指的单词下一次出现的地方</p>
<p>#   转到当前光标所指的单词上一次出现的地方</p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/172/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux 技巧：让进程在后台可靠运行的几种方法</title>
		<link>http://www.phpblog.cn/archives/162</link>
		<comments>http://www.phpblog.cn/archives/162#comments</comments>
		<pubDate>Sat, 11 Jul 2009 04:42:00 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=162</guid>
		<description><![CDATA[http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/" target="_blank">http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/162/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Install Fonts in Ubuntu</title>
		<link>http://www.phpblog.cn/archives/141</link>
		<comments>http://www.phpblog.cn/archives/141#comments</comments>
		<pubDate>Tue, 09 Jun 2009 13:36:54 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=141</guid>
		<description><![CDATA[cd ~
If '.fonts' folder is not exists, create it:
mkdir .fonts
Move your ttf font file to here, then restart application. OK!
monaco - code font in mac os x
]]></description>
			<content:encoded><![CDATA[<p>cd ~</p>
<p>If '.fonts' folder is not exists, create it:</p>
<p>mkdir .fonts</p>
<p>Move your ttf font file to here, then restart application. OK!</p>
<p><a href="http://www.phpblog.cn/wp-content/uploads/2009/06/monaco.ttf">monaco - code font in mac os x</a></p>
<p><a href="http://www.phpblog.cn/wp-content/uploads/2009/06/screenshot-shiruishirui-desktop.png" rel="lightbox[141]"><img class="alignnone size-full wp-image-145" title="monaco.ttf example" src="http://www.phpblog.cn/wp-content/uploads/2009/06/screenshot-shiruishirui-desktop.png" alt="monaco.ttf example" width="356" height="286" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/141/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vim的diff模式常用命令</title>
		<link>http://www.phpblog.cn/archives/139</link>
		<comments>http://www.phpblog.cn/archives/139#comments</comments>
		<pubDate>Sat, 06 Jun 2009 16:41:25 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=139</guid>
		<description><![CDATA[:diffsplit {filename}
进入diff模式, 默认是水平分割, 如果要垂直分割, 可以在.vimrc中添加set diffopt=vertical
[c &#38; ]c
在差异的部分进行跳转
:diffget
用另一个缓冲区来修改当前缓冲区, 消除不同之处, 仅对光标所在行附近有影响
:diffput
用当前缓冲区来修改另一个缓冲区, 消除不同之处, 仅对光标所在行附近有影响
:diffupdate
刷新]]></description>
			<content:encoded><![CDATA[<p>:diffsplit {filename}<br />
进入diff模式, 默认是水平分割, 如果要垂直分割, 可以在.vimrc中添加set diffopt=vertical</p>
<p>[c &amp; ]c<br />
在差异的部分进行跳转</p>
<p>:diffget<br />
用另一个缓冲区来修改当前缓冲区, 消除不同之处, 仅对光标所在行附近有影响</p>
<p>:diffput<br />
用当前缓冲区来修改另一个缓冲区, 消除不同之处, 仅对光标所在行附近有影响</p>
<p>:diffupdate<br />
刷新</p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/139/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>svn分支合并</title>
		<link>http://www.phpblog.cn/archives/77</link>
		<comments>http://www.phpblog.cn/archives/77#comments</comments>
		<pubDate>Fri, 08 May 2009 07:12:42 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.phpblog.cn/?p=77</guid>
		<description><![CDATA[假设主干的工作副本在~/manyou目录下，某分支v20080917创建时的版本号为14515
- 合并分支的所有改动
cd ~/manyou
svn merge -r14515:HEAD svn://10.0.1.33/manyou/branches/v20080917
- 仅仅合并某个文件
cd ~/manyou/src/include/UCHome/Service/
svn merge -r14515:HEAD svn://10.0.1.33/manyou/branches/v20080917/src/include/UCHome/Service/SiteSyncAllJob.php
此时，如果分支有变化，就会像svn up命令一样，出现A +/M/D/G/U等信息，并更新本地副本里的内容，然后就可以通过svn ci提交相关改动了。
注意
* 如果只想对比有那些改动，还可以使用svn diff或者svn merge --dry-run查看。
* 使用-r参数比较时，一般都是小版本号在左边
参考
* svn help merge
* 在分支间拷贝]]></description>
			<content:encoded><![CDATA[<p>假设主干的工作副本在~/manyou目录下，某分支v20080917创建时的版本号为14515</p>
<p>- 合并分支的所有改动</p>
<p>cd ~/manyou<br />
svn merge -r14515:HEAD svn://10.0.1.33/manyou/branches/v20080917</p>
<p>- 仅仅合并某个文件</p>
<p>cd ~/manyou/src/include/UCHome/Service/<br />
svn merge -r14515:HEAD svn://10.0.1.33/manyou/branches/v20080917/src/include/UCHome/Service/SiteSyncAllJob.php</p>
<p>此时，如果分支有变化，就会像svn up命令一样，出现A +/M/D/G/U等信息，并更新本地副本里的内容，然后就可以通过svn ci提交相关改动了。<br />
注意</p>
<p>* 如果只想对比有那些改动，还可以使用svn diff或者svn merge --dry-run查看。<br />
* 使用-r参数比较时，一般都是小版本号在左边</p>
<p>参考</p>
<p>* svn help merge<br />
* <a href="http://www.subversion.org.cn/svnbook/1.2/svn.branchmerge.copychanges.html">在分支间拷贝</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/77/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linux下cron的使用</title>
		<link>http://www.phpblog.cn/archives/44</link>
		<comments>http://www.phpblog.cn/archives/44#comments</comments>
		<pubDate>Wed, 04 Mar 2009 02:06:49 +0000</pubDate>
		<dc:creator>shishirui</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://srui.wordpress.com.cn/?p=44</guid>
		<description><![CDATA[cron是一个linux下的定时执行工具，可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务，但它不自动起来，可以用以下的方法启动、关闭这个服务:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
你也可以将这个服务在系统启动的时候自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start
现在Cron这个服务已经在进程里面了，我们就可以用这个服务了，Cron服务提供以下几种接口供大家使用:
1.直接用crontab命令编辑
cron服务提供crontab命令来设定cron服务的，以下是这个命令的一些参数与说明:
crontab -u //设定某个用户的cron服务，一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:crontab -u root -l
再例如，root想删除fred的cron设置:crontab -u fred -r
在编辑cron服务时，编辑的内容有一些格式和约定，输入:crontab -u root -e
进入vi编辑模式，编辑的内容一定要符合下面的格式:*/1 * * * * ls &#62;&#62; /tmp/ls.txt
这个格式的前一部分是对时间的设定，后面一部分是要执行的命令，如果要执行的命令太多，可以把这些命令写到一个脚本里面，然后在这里直接调用这个脚本就可以了，调用的时候记得写出命令的完整路径。时间的设定我们有一定的约定，前面五个*号代表五个数字，数字的取值范围和含义如下:
分钟　(0-59)
小時　(0-23)
日期　(1-31)
月份　(1-12)
星期　(0-6)//0代表星期天
除了数字还有几个个特殊的符号就是"*"、"/"和"-"、","，*代表所有的取值范围内的数字，"/"代表每的意思,"*/5"表示每5个单位，"-"代表从某个数字到某个数字,","分开几个离散的数字。以下举几个例子说明问题:
每天早上6点
0 6 * * * echo "Good morning." &#62;&#62; /tmp/test.txt //注意单纯echo，从屏幕上看不到任何输出，因为cron把任何输出都email到root的信箱了。
每两个小时
0 */2 * * * echo [...]]]></description>
			<content:encoded><![CDATA[<p>cron是一个linux下的定时执行工具，可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务，但它不自动起来，可以用以下的方法启动、关闭这个服务:</p>
<p>/sbin/service crond start //启动服务</p>
<p>/sbin/service crond stop //关闭服务</p>
<p>/sbin/service crond restart //重启服务</p>
<p>/sbin/service crond reload //重新载入配置</p>
<p>你也可以将这个服务在系统启动的时候自动启动:</p>
<p>在/etc/rc.d/rc.local这个脚本的末尾加上:</p>
<p>/sbin/service crond start</p>
<p>现在Cron这个服务已经在进程里面了，我们就可以用这个服务了，Cron服务提供以下几种接口供大家使用:</p>
<p>1.直接用crontab命令编辑</p>
<p>cron服务提供crontab命令来设定cron服务的，以下是这个命令的一些参数与说明:</p>
<p>crontab -u //设定某个用户的cron服务，一般root用户在执行这个命令的时候需要此参数</p>
<p>crontab -l //列出某个用户cron服务的详细内容</p>
<p>crontab -r //删除没个用户的cron服务</p>
<p>crontab -e //编辑某个用户的cron服务</p>
<p>比如说root查看自己的cron设置:crontab -u root -l</p>
<p>再例如，root想删除fred的cron设置:crontab -u fred -r</p>
<p>在编辑cron服务时，编辑的内容有一些格式和约定，输入:crontab -u root -e</p>
<p>进入vi编辑模式，编辑的内容一定要符合下面的格式:*/1 * * * * ls &gt;&gt; /tmp/ls.txt<br />
这个格式的前一部分是对时间的设定，后面一部分是要执行的命令，如果要执行的命令太多，可以把这些命令写到一个脚本里面，然后在这里直接调用这个脚本就可以了，调用的时候记得写出命令的完整路径。时间的设定我们有一定的约定，前面五个*号代表五个数字，数字的取值范围和含义如下:</p>
<p>分钟　(0-59)</p>
<p>小時　(0-23)</p>
<p>日期　(1-31)</p>
<p>月份　(1-12)</p>
<p>星期　(0-6)//0代表星期天</p>
<p>除了数字还有几个个特殊的符号就是"*"、"/"和"-"、","，*代表所有的取值范围内的数字，"/"代表每的意思,"*/5"表示每5个单位，"-"代表从某个数字到某个数字,","分开几个离散的数字。以下举几个例子说明问题:</p>
<p>每天早上6点</p>
<p>0 6 * * * echo "Good morning." &gt;&gt; /tmp/test.txt //注意单纯echo，从屏幕上看不到任何输出，因为cron把任何输出都email到root的信箱了。</p>
<p>每两个小时</p>
<p>0 */2 * * * echo "Have a break now." &gt;&gt; /tmp/test.txt</p>
<p>晚上11点到早上8点之间每两个小时，早上八点</p>
<p>0 23-7/2，8 * * * echo "Have a good dream:)" &gt;&gt; /tmp/test.txt</p>
<p>每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点</p>
<p>0 11 4 * 1-3 command line</p>
<p>1月1日早上4点</p>
<p>0 4 1 1 * command line</p>
<p>每次编辑完某个用户的cron设置后，cron自动在/var/spool/cron下生成一个与此用户同名的文件，此用户的cron信息都记录在这个文件中，这个文件是不可以直接编辑的，只可以用crontab -e 来编辑。cron启动后每过一份钟读一次这个文件，检查是否要执行里面的命令。因此此文件修改后不需要重新启动cron服务。</p>
<p>2.编辑/etc/crontab 文件配置cron</p>
<p>cron服务每分钟不仅要读一次/var/spool/cron内的所有文件，还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情。用crontab配置是针对某个用户的，而编辑/etc/crontab是针对系统的任务。此文件的文件格式是:</p>
<p>SHELL=/bin/bash</p>
<p>PATH=/sbin:/bin:/usr/sbin:/usr/bin</p>
<p>MAILTO=root //如果出现错误，或者有数据输出，数据作为邮件发给这个帐号</p>
<p>HOME=/ //使用者运行的路径,这里是根目录</p>
<p># run-parts</p>
<p>01 * * * * root run-parts /etc/cron.hourly //每小时执行/etc/cron.hourly内的脚本</p>
<p>02 4 * * * root run-parts /etc/cron.daily //每天执行/etc/cron.daily内的脚本</p>
<p>22 4 * * 0 root run-parts /etc/cron.weekly //每星期执行/etc/cron.weekly内的脚本</p>
<p>42 4 1 * * root run-parts /etc/cron.monthly //每月去执行/etc/cron.monthly内的脚本</p>
<p>大家注意"run-parts"这个参数了，如果去掉这个参数的话，后面就可以写要运行的某个脚本名，而不是文件夹名了。</p>]]></content:encoded>
			<wfw:commentRss>http://www.phpblog.cn/archives/44/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
