<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[秋日落叶的博客]]></title>
<link>http://www.furlxy.net/blog/</link>
<description><![CDATA[创造机会的人是勇者；等待机会的人是愚者]]></description>
<language>zh-cn</language>
<copyright><![CDATA[Copyright 2005 PBlog3 v2.8]]></copyright>
<webMaster><![CDATA[furlxy@gmail.com(furlxy)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>秋日落叶的博客</title>
	<url>http://www.furlxy.net/blog/images/logos.gif</url>
	<link>http://www.furlxy.net/blog/</link>
	<description>秋日落叶的博客</description>
</image>

			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=50</link>
			<title><![CDATA[今天我&#34;黑屏&#34;了-.-]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[日记]]></category>
			<pubDate>Wed,05 Nov 2008 16:00:53 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=50</guid>
		<description><![CDATA[<p>下午上班时,突然看到右下角出现的黄色小盾,点开一看,哇塞!这不是传说中的WGA么...<br />
装上之后立即重启,果然,&quot;黑了&quot;<br />
我把黑屏的消息发到3个群中,回应大致一样:<br />
群1:<br />
A:GXGX<br />
B:OY GXGX~<br />
群2:<br />
C:zhen hao kan a<br />
D:你运气真好.<br />
群3:<br />
E:...<br />
F:恭喜啊~</p>
<p>不过说实话,这黑桌面+提示确实挺好看的<img alt="" src="http://www.furlxy.net/blog/fckeditor/editor/images/smiley/qq2007/12.gif" /><img alt="" border="0" src="http://www.furlxy.net/blog/attachments/month_0811/82008115155953.jpg" /></p>
<p>送上&quot;正版&quot;盗版提示桌面.</p>
<p><img alt="" src="http://www.furlxy.net/blog/attachments/month_0811/f2008115202240.jpg" /></p>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=49</link>
			<title><![CDATA[DELL Studio]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[日记]]></category>
			<pubDate>Sun,02 Nov 2008 15:20:41 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=49</guid>
		<description><![CDATA[<p>这周末回了趟家,终于拿到了朝思暮想的本本<img alt="" src="http://www.furlxy.net/blog/fckeditor/editor/images/smiley/qq2007/13.gif" /><br />
studio,多媒体触摸屏<br />
<img alt="studio,多媒体触摸屏" src="http://www.furlxy.net/blog/attachments/month_0811/y200811215659.jpg" />&nbsp;<br />
侧面,吸入式光驱,开关机键<img alt="侧面" src="http://www.furlxy.net/blog/attachments/month_0811/7200811215117.jpg" /><br />
指纹识别&nbsp;<br />
<img alt="指纹识别" src="http://www.furlxy.net/blog/attachments/month_0811/z2008112151126.jpg" /><br />
<br />
<br />
性能上还说的过去,至少跑wow可以维持在30-40帧<br />
比较有意思的是触摸屏,多媒体触摸屏从右边按住往左移动,会有残影效果,cool~</p>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=48</link>
			<title><![CDATA[web game]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[日记]]></category>
			<pubDate>Thu,16 Oct 2008 13:44:28 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=48</guid>
		<description><![CDATA[<p>游戏终于发布了<br />
<a href="http://www1.fenggame.com/">http://www1.fenggame.com/</a></p>
<p>对于我来说.这是比较欣慰的,毕竟是来北京之后第一份工作的成果.<br />
目前是测试版,还有许多地方需要改进.</p>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=47</link>
			<title><![CDATA[升级到了PJ3]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[大杂烩]]></category>
			<pubDate>Sat,11 Oct 2008 14:26:33 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=47</guid>
		<description><![CDATA[写个日志记录下吧-o-<br/>下载附件:<br/><img src="http://www.furlxy.net/blog/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://www.furlxy.net/blog/attachments/month_0810/420081011142113.rar" target="_blank">点击下载此文件</a><br/><br/><br/>1.打开 common 文件夹中的 ubbcode.asp，查找[code<br/><br/>大约在259行,在<br/><div class="UBBPanel codePanel"><div class="UBBTitle"><img src="http://www.furlxy.net/blog/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;re.Pattern = &#34;\[code\](.*?)\[\/code\]&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;strContent = re.Replace(strContent, &#34;&lt;div class=&#34;&#34;UBBPanel codePanel&#34;&#34;&gt;&lt;div class=&#34;&#34;UBBTitle&#34;&#34;&gt;&lt;img src=&#34;&#34;images/code.gif&#34;&#34; style=&#34;&#34;margin:0px 2px -3px 0px&#34;&#34; alt=&#34;&#34;程序代码&#34;&#34;/&gt; 程序代码&lt;/div&gt;&lt;div class=&#34;&#34;UBBContent&#34;&#34;&gt;$1&lt;/div&gt;&lt;/div&gt;&#34;)<br/></div></div><br/>后面加上<br/><div class="UBBPanel codePanel"><div class="UBBTitle"><img src="http://www.furlxy.net/blog/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>re.Pattern = &#34;\[code=([^\r]*?)\](.*?)\[\/code\]&#34;<br/>Set strMatchs = re.Execute(strContent)<br/>For Each strMatch in strMatchs<br/>strContent = Replace(strContent, strMatch.Value, &#34;&lt;textarea name=&#34;&#34;code&#34;&#34; class=&#34;&#34;&#34; &amp; strMatch.SubMatches(0) &amp; &#34;&#34;&#34;&gt;&#34; &amp; UBBFilter(HTMLDecode(strMatch.SubMatches(1))) &amp; &#34;&lt;/textarea&gt;&#34;, 1, -1, 0)<br/>Next<br/>Set strMatchs = Nothing<br/></div></div><br/><br/>2.打开根目录下的 header.asp 文件，找到&lt;link rel=&#34;stylesheet&#34; rev=&#34;stylesheet&#34; href=&#34;FCKeditor/editor/css/Dphighlighter.css&#34; type=&#34;text/css&#34; media=&#34;all&#34; /&gt;&lt;!--FCK块引用&amp;代码样式--&gt;<br/>在后面加入<br/><div class="UBBPanel codePanel"><div class="UBBTitle"><img src="http://www.furlxy.net/blog/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&lt;link rel=&#34;stylesheet&#34; rev=&#34;stylesheet&#34; href=&#34;common/veisin/veisin.css&#34; type=&#34;text/css&#34; /&gt;<br/></div></div><br/><br/>3.打开根目录的 footer.asp 文件，找到<br/>&lt;script type=&#34;text/javascript&#34;&gt;initAccessKey()&nbsp;&nbsp;//转换AccessKey For IE&lt;/script&gt;<br/>在后面加入<br/><div class="UBBPanel codePanel"><div class="UBBTitle"><img src="http://www.furlxy.net/blog/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&lt;script language=&#34;javascript&#34; src=&#34;common/veisin/shCore.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushJScript.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushVb.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushCss.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushCSharp.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushCpp.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushDelphi.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushJava.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushPhp.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushPython.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushRuby.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushSql.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34; src=&#34;common/veisin/shBrushXml.js&#34;&gt;&lt;/script&gt;<br/>&lt;script type=&#34;text/javascript&#34;&gt;<br/>dp.SyntaxHighlighter.ClipboardSwf = &#39;common/veisin/clipboard.swf&#39;;<br/>dp.SyntaxHighlighter.HighlightAll(&#39;code&#39;);<br/>&lt;/script&gt;<br/></div></div><br/><br/>5.找到 FCKeditor 文件夹，打开FCKeditor/editor/css/Dphighlighter.css，删除下面的代码。<br/>.Content-body li {<br/>list-style:disc<br/>}<br/>第五步是为了解决数字的显示问题，如果不去掉的话，那么代码前面的数字将不会显示，而是显示一个小圆点。<br/>写的时候这样:<br/>[code=php]<br/>echo &#34;hello world&#34;;<br/>[/code]<br/><br/>使用介绍<a target="_blank" href="http://code.google.com/p/syntaxhighlighter/wiki/Languages" rel="external">http://code.google.com/p/syntaxhighlighter/wiki/Languages</a>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=45</link>
			<title><![CDATA[foreach的BUG]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[PHP]]></category>
			<pubDate>Sun,13 Jul 2008 22:33:37 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=45</guid>
		<description><![CDATA[这个陷阱在PHP里存在很久了，先看代码：<br/><br/><textarea name="code" class="php">
<?php 
$array = array(1, 2, 3); 

foreach ($array as &amp;$v) {} 
foreach ($array as  $v) {} 

print_r($array); 
?> 
</textarea><br/><br/>运行代码，得到的结果却是：<br/><br/>Array(&nbsp;&nbsp;&nbsp;&nbsp;[0] =&gt; 1&nbsp;&nbsp;&nbsp;&nbsp;[1] =&gt; 2&nbsp;&nbsp;&nbsp;&nbsp;[2] =&gt; 2)<br/>可以发现，经过两次foreach后，最后一个元素由3变成了2。<br/><br/>为什么会这样呢？这是因为第一次foreach的时候$v成为了一个引用变量（$array[2]），如此，当第二次foreach的时候，实际上只是在对这个引用变量（$array[2]）进行了若干次赋值而已。<br/><br/>第一次：$array[2] = 1，此时$array各元素分别为1，2，1<br/>第二次：$array[2] = 2，此时$array各元素分别为1，2，2<br/>第二次：$array[2] = 2，此时$array各元素分别为1，2，2<br/><br/>一不小心很可能会掉入这个陷阱，为了避免这个问题，需要在第一次foreach后执行unset($v)，解决方案有点丑陋，但也没有办法，PHP脚本里的变量一旦生成就在整个脚本中有效，不像Java中，变量是块级别的，仅仅在对应的{}中有效。<br/><br/>PHP的Bug系统里能看到关于这个<a target="_blank" href="http://bugs.php.net/bug.php?id=29992" rel="external">这个问题的链接</a>，不过从04年提出这个问题到现在已经四年了，估计PHP团队不会解决这个问题了。也是，从PHP的脚本特性来说这也可以说不是Bug，只是苦了我们这些程序员，要多加小心了。]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=44</link>
			<title><![CDATA[jQuery-仿魔兽世界buff计时]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[大杂烩]]></category>
			<pubDate>Thu,10 Jul 2008 22:27:02 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=44</guid>
		<description><![CDATA[setInterval配合jQuery的特效,做了个好玩的效果 <img src="http://www.furlxy.net/blog/images/smilies/Face_02.gif" border="0" style="margin:0px 0px -2px 0px" alt=""/><br/>看效果:<br/><img src="http://www.furlxy.net/blog/attachments/month_0807/f2008710222643.jpg" border="0" alt=""/><br/><br/>源代码:<br/><img src="http://www.furlxy.net/blog/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://www.furlxy.net/blog/attachments/month_0807/02008710222322.rar" target="_blank">点击下载此文件</a><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=43</link>
			<title><![CDATA[ZendFramework MVC研究]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[PHP]]></category>
			<pubDate>Fri,04 Jul 2008 23:25:51 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=43</guid>
		<description><![CDATA[<br/>回顾下J2EE中Struts的MVC流程:<br/>由视图层(View)发送请求至控制层(Controller),控制层给你举请求的类型执行模型层(Model),模型层返回结果给控制层,控制层根据返回结果,给用户返回相应的页面.<br/><br/>在Struts中,分工明确:JSP/HTML负责View,Struts action负责Controller,Java Bean负责Model.<br/>不过在PHP里就没这么明确了,只有PHP与HTML文件,那么就少了Model这一层(Model与Controller都由PHP负责),这也许是在ZendFramework MVC中没有使用Model的原因.<br/>当然,如果不觉得麻烦,也可以自己加一个PHP页面负责处理Model.<br/><br/>目录结构:<br/><br/><img src="http://www.furlxy.net/blog/attachments/month_0807/c200874232441.jpg" border="0" alt=""/><br/><br/>application:后台代码目录<br/>&#160;&#160;&#160;&#160;default:默认模块,由于前台目录只有一个index.php,所以网站是单一入口,通过不同的URL(<a href="http://www.1.com/" target="_blank" rel="external">http://www.1.com/</a>即访问<a href="http://www.1.com/default" target="_blank" rel="external">http://www.1.com/default</a>)ZendFramework会自动分析,使用不同的模块或者路由(Router).<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;controllers:即MVC中的Controller<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;models:没有使用<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;views:视图(View)通过controllers目录下相应的文件,返回该目录下对应名称的页面.<br/>html:前台目录,图片,js脚本,css文件以及.htaccess与index.php文件放在这<br/>library:不知道干嘛的<br/><br/>在部署网站时,只需把html目录设置为网站根目录即可.那么只有一个index.php文件可以访问.<br/>.htaccess文件内容:<br/>RewriteEngine on<br/>RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php<br/><br/>开启了URL重写,除了RewriteRule以外的任意地址,都会转到index.php文件.同时也要开启Apache的URLRewrite模块.<br/>真够麻烦的,感觉与J2EE比起来,缺胳膊少腿- -!<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=42</link>
			<title><![CDATA[不健全的异常处理.]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[PHP]]></category>
			<pubDate>Fri,20 Jun 2008 22:39:19 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=42</guid>
		<description><![CDATA[<textarea name="code" class="php">
try{
	$i = 2/0;
	throw new Exception('error');
}catch(Exception $e){
	echo 'Error!<br />';
	echo 'File:' . $e->getFile () . '<br />';
	echo 'Line:' . $e->getLine () . '<br />';
	echo 'Message:' . $e->getMessage () . '<br />';
}
</textarea><br/>笨拙的手动抛出异常,并且还有系统的错误提示,这算什么啊 <img src="http://www.furlxy.net/blog/images/smilies/Face_10.gif" border="0" style="margin:0px 0px -2px 0px" alt=""/><br/>查了下资料(<a target="_blank" href="http://classes.scri&#112;tsphp.org/article.PHP-5-et-les-exceptions" rel="external">原文地址</a>),发现有<a target="_blank" href="http://docs.php.net/manual/en/function.set-error-handler.php" rel="external">set_error_handler</a>这个函数.可以自定义处理错误,那么与Exception进行结合后<br/><br/><textarea name="code" class="php">
<?php
/**
 * Runtime exception class
 */
class MyException extends Exception {
	function __construct($level, $string, $file, $line, $context) {
		parent::__construct ( $string );
		$this->file = $file;
		$this->line = $line;
		$this->_level = $level;
		$this->_context = $context;
	}
}
/**
 * handler exception function
 *
 * @param int $level
 * @param string $string
 * @param string $file
 * @param int $line
 * @param string $context
 */
function runtimeErrorHandler($level, $string, $file, $line, $context) {
	throw new MyException ( $level, $string, $file, $line, $context );
}
/**
 * example:
 */
set_error_handler ( &#34;runtimeErrorHandler&#34; );
try {
	$i = 2/0;
} catch ( MyException $e ) {
	echo 'Error!<br />';
	echo 'File:' . $e->getFile () . '<br />';
	echo 'Line:' . $e->getLine () . '<br />';
	echo 'Message:' . $e->getMessage () . '<br />';
}
?>
</textarea><br/>比较完美了.<br/>但是随便输入一串字符,还是会提示系统中的错误提示.<br/><br/>总结:<br/>php的面向对象编程还有很长一段路要走,就异常处理来讲与java相比是天壤之别.<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=41</link>
			<title><![CDATA[Samba服务配置]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[Linux]]></category>
			<pubDate>Tue,17 Jun 2008 16:36:46 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=41</guid>
		<description><![CDATA[新增用户smb_user,密码123456<br/>然后使用smbpasswd -a smb_user设置该用户在Win下的访问密码<br/><br/>关键目录:<br/>/etc/samba<br/>/etc/selinux<br/>/home/smb_user<br/><br/>cd /etc/samba<br/>vi smb.conf<br/>找到[global],以下看情况修改<br/><br/>workgroup = 设置服务器所在的工作组<br/>server string = Samba服务器名称，％v 服务器版本号<br/>netbios name = 在网络邻居中的名子，不设则用原来的主机名<br/>hosts allow= 指定允许访问samba服务器的ＩＰ。 <br/>log file = 设置日志文件路径<br/><br/>max log size = 对日志文件长度做限制（KB）<br/>security = 设置安全等级（samba有四个安全等级，share,user,server,domain<br/>encrypt passwords = 设置用户密码加密<br/>smb passwd file = 密码文件路径<br/><br/>在文件最底部写入<br/>[smb_test]<br/>path = /home/smb_user<br/>writeable = yes<br/>public = yes<br/><br/>解释:<br/> comment 对共享的描述<br/> path 共享路径<br/> writable 共享目录是否可写<br/> browseable 共享目录是否可见（默认yes）<br/> read only 共享目录是否为只读<br/> public 是否可以允许guest帐户访问<br/> read list 只读访问用户列表<br/> write list 只写访问用户列表<br/> valid users 允许使用服务的用户列表<br/> invalid users 不允许使用服务的用户列表<br/><br/>完成后保存退出<br/><br/>接下来转到/etc/selinux目录,<span style="color:Red">最重要的一步,很多人不知道为什么设置的正确,但是在win下提示找不到网络名</span><br/>cd /etc/selinux<br/>vi config<br/>修改<br/>SELINUX=disabled<br/>保存退出<br/>输入<br/>setenforce 0<br/><br/>service smb restart<br/><br/>再转入win下,打开网络邻居输入Linux的IP进行访问.<br/>如果找不到linux,在linux下输入<br/>setup<br/>选择防火墙-&gt;定制-&gt;勾选SAMBA以及其他需要别人访问的服务.]]></description>
		</item>
		
			<item>
			<link>http://www.furlxy.net/blog/article.asp?id=40</link>
			<title><![CDATA[Linux学习笔记3-vi命令]]></title>
			<author>furlxy@gmail.com(furlxy)</author>
			<category><![CDATA[Linux]]></category>
			<pubDate>Mon,09 Jun 2008 22:36:29 +0800</pubDate>
			<guid>http://www.furlxy.net/blog/default.asp?id=40</guid>
		<description><![CDATA[1.附加与插入命令<br/>--------------------------------------<br/>a&#160;&#160;&#160;&#160;在光标后附加文本<br/>A&#160;&#160;&#160;&#160;在本行行末附加文本<br/>i&#160;&#160;&#160;&#160;在光标前插入文本<br/>I&#160;&#160;&#160;&#160;在本行开始插入文本<br/>o&#160;&#160;&#160;&#160;在光标下插入新行<br/>O&#160;&#160;&#160;&#160;在光标上插入新行<br/><br/>2.定位命令<br/>--------------------------------------<br/>h/←&#160;&#160;&#160;&#160;左移一个字符<br/>j/↓&#160;&#160;&#160;&#160;下移一行<br/>k/↑&#160;&#160;&#160;&#160;上移一行<br/>l/→&#160;&#160;&#160;&#160;右移一个字符<br/>$&#160;&#160;&#160;&#160;移至行尾<br/>0&#160;&#160;&#160;&#160;移至行守<br/>回车&#160;&#160;&#160;&#160;移动下行行守<br/>H&#160;&#160;&#160;&#160;当前屏幕最上端<br/>M&#160;&#160;&#160;&#160;当前屏幕中央<br/>L&#160;&#160;&#160;&#160;当前屏幕最下端<br/>G&#160;&#160;&#160;&#160;到文件最后一行<br/>1G&#160;&#160;&#160;&#160;到文件第一行<br/>2G&#160;&#160;&#160;&#160;到文件第二行,以此类推<br/>:n&#160;&#160;&#160;&#160;到第n行<br/>*显示行号<br/>&#160;&#160;&#160;&#160;:set nu<br/> 取消显示行号<br/>&#160;&#160;&#160;&#160;:set nonu<br/><br/>3.删除命令<br/>--------------------------------------<br/>x&#160;&#160;&#160;&#160;删除光标所在处字符<br/>X&#160;&#160;&#160;&#160;删除光标前面的字符<br/>dd&#160;&#160;&#160;&#160;删除光标所在行<br/>dG&#160;&#160;&#160;&#160;删除从光标所在行到末尾的内容<br/>D&#160;&#160;&#160;&#160;删除从光标所在处到行尾<br/>:3,5d&#160;&#160;&#160;&#160;删除3到5行<br/>:10,20d&#160;&#160;&#160;&#160;删除10到20行,以此类推<br/><br/>4.复制命令<br/>--------------------------------------<br/>yy/Y&#160;&#160;&#160;&#160;复制当前行<br/>5yy/5Y&#160;&#160;&#160;&#160;复制当前行以下5行<br/>8yy/8Y&#160;&#160;&#160;&#160;复制当前行以下8行,以此类推<br/>p&#160;&#160;&#160;&#160;将已经选择复制或被删除的行放置在当前行下<br/><br/>5.替换和取消命令<br/>--------------------------------------<br/>r&#160;&#160;&#160;&#160;取代光标所在处字符<br/>R&#160;&#160;&#160;&#160;从光标所在处开始替换字符，按Esc结束<br/>s&#160;&#160;&#160;&#160;替换光标所在处字符,并进入文本输入方式<br/>S&#160;&#160;&#160;&#160;替换光标所在全行,按Esc结束<br/>u&#160;&#160;&#160;&#160;取消上一步操作<br/>U&#160;&#160;&#160;&#160;取消当前行的所有操作<br/><br/>6.保存和退出命令<br/>--------------------------------------<br/>:w&#160;&#160;&#160;&#160;保存修改<br/>:w haha&#160;&#160;&#160;&#160;保存为haha<br/>:wq&#160;&#160;&#160;&#160;保存修改并退出<br/>ZZ&#160;&#160;&#160;&#160;保存修改并退出<br/>:q!&#160;&#160;&#160;&#160;不保存修改退出<br/>:wq!&#160;&#160;&#160;&#160;保存修改并退出(文件所有者忽略文件的只读属性)<br/><br/>7.搜索和替换命令<br/>--------------------------------------<br/>/haha&#160;&#160;&#160;&#160;向后搜索haha<br/>/hehe&#160;&#160;&#160;&#160;向后搜索hehe,以此类推<br/>?haha&#160;&#160;&#160;&#160;向前搜索haha<br/>?hehe&#160;&#160;&#160;&#160;向前搜索hehe,以此类推<br/>n&#160;&#160;&#160;&#160;搜索指定字符串的下一个出现位置<br/>N&#160;&#160;&#160;&#160;搜索指定字符串的上一个出现位置<br/>:%s/124/ppp/g<br/>&#160;&#160;&#160;&#160;全文替换124为ppp<br/><br/>8.其他<br/>--------------------------------------<br/>当前用户文件夹下,可以建立一个.vimrc文件,用于存储vi配置信息<br/>例如,在/home/test目录下建立.vimrc<br/>其中写入<br/>set nu<br/>那么,在该用户的其他地方使用vi时都会显示行号<br/><br/>:!ls<br/>可以再编辑器中输入:!命令<br/>执行命令<br/>]]></description>
		</item>
		
</channel>
</rss>
