<?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>Perl中文站-My Script Center</title>
	<atom:link href="http://perlcn.net/feed" rel="self" type="application/rss+xml" />
	<link>http://perlcn.net</link>
	<description>There is more than one way to do it !</description>
	<lastBuildDate>Fri, 02 Jul 2010 17:36:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>深圳加长试验公交巴士诸多问题233、301等</title>
		<link>http://perlcn.net/shenzhen-long-bus</link>
		<comments>http://perlcn.net/shenzhen-long-bus#comments</comments>
		<pubDate>Fri, 02 Jul 2010 17:36:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[公交 巴士 301 223 深圳]]></category>

		<guid isPermaLink="false">http://perlcn.net/shenzhen-long-bus</guid>
		<description><![CDATA[最近一个来月，路面上见到不少加长的测试车，最初是223，后来是好多301.。。车子相对以前有一定改进，但是也不少问题。。
改进：

车长较之前的巴士长了至少两三米。空间理论上更大了。
车门由2个变为3个，理论上乘客上下门会快一些。
前部车座变窄了，走道变宽了，走道可以容纳更多的乘客，而且上下车相对容易一些。

但是感觉也有不少问题：主要集中在中门和后门之间的空间的设计上

后头的座位不同于前头的座位设计，要宽很多，导致走道异常狭窄，大致看了下，后半的走道要比前半的走到窄至少30多公分
而且后头部分的座位设计的都要比走道高很多。。这样当走道站满乘客的时候，座位上的乘客要起身，并进入走道，无疑增加了难度。。。
走道太狭窄了，站一个基本就没有什么空间了。。2个人来回就十分困难了。。
另外车子的最后很大一块空间没有使用，不知道是为什么。大概1米多长的车身。。真够浪费空间的。。。
另外运行还不到一个月时间，车子轰隆隆直响。。。这么快就有质量问题了？

建议：首先保证运力，后半部分甚至可以不设置座位。。。后半的设计实在蹩脚，虽然多了一个门，结果乘客上下车速度反倒较之前慢了很多。。无疑增加了车辆进站、出站的时间耗费，一定程度也阻碍了交通。。


热评日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)2010年01月25日 -- Perl学习资料打包(搜集整理By mwm5)  (1)2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)2010年01月28日 -- Perl常用模块使用例子(转载)3 (1)2010年01月27日 -- 留言 (1)]]></description>
			<content:encoded><![CDATA[<p>最近一个来月，路面上见到不少加长的测试车，最初是223，后来是好多301.。。<br />车子相对以前有一定改进，但是也不少问题。。</p>
<p>改进：
<ol>
<li>车长较之前的巴士长了至少两三米。空间理论上更大了。</li>
<li>车门由2个变为3个，理论上乘客上下门会快一些。</li>
<li>前部车座变窄了，走道变宽了，走道可以容纳更多的乘客，而且上下车相对容易一些。</li>
</ol>
<p>但是感觉也有不少问题：<br />主要集中在中门和后门之间的空间的设计上
<ol>
<li>后头的座位不同于前头的座位设计，要宽很多，导致走道异常狭窄，大致看了下，后半的走道要比前半的走到窄至少30多公分</li>
<li>而且后头部分的座位设计的都要比走道高很多。。这样当走道站满乘客的时候，座位上的乘客要起身，并进入走道，无疑增加了难度。。。</li>
<li>走道太狭窄了，站一个基本就没有什么空间了。。2个人来回就十分困难了。。</li>
<li>另外车子的最后很大一块空间没有使用，不知道是为什么。大概1米多长的车身。。真够浪费空间的。。。</li>
<li>另外运行还不到一个月时间，车子轰隆隆直响。。。这么快就有质量问题了？</li>
</ol>
<p>建议：<br />首先保证运力，后半部分甚至可以不设置座位。。。<br />后半的设计实在蹩脚，虽然多了一个门，结果乘客上下车速度反倒较之前慢了很多。。无疑增加了车辆进站、出站的时间耗费，一定程度也阻碍了交通。。</p>
<p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" alt="" src="http://img.zemanta.com/pixy.gif?x-id=b9a4570d-301f-8bef-a1b3-3345287ab906" /></div>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/shenzhen-long-bus/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>linux下mysql客户端乱码问题各种解决办法</title>
		<link>http://perlcn.net/linux_mysql_luanma_solution</link>
		<comments>http://perlcn.net/linux_mysql_luanma_solution#comments</comments>
		<pubDate>Wed, 09 Jun 2010 14:57:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://perlcn.net/linux_mysql_luanma_solution</guid>
		<description><![CDATA[运行show variables like &#8220;char%&#8221; ;查看当前的字符集编码情况
以下用“x”代表对应的字符集编码，如：gbk，gb2312，utf8，latin等，请按照需要进行修改
1、mysql连接服务器后，set names x;
2、mysql连接服务器后，set character set x ;
3、用带参数的mysql命令连接mysql &#8211;default-character-set=x
4、编辑/etc/my.cnf,添加如下内容：[mysql]default-character-set=x
5、编辑/etc/bashrc，添加如下内容：alias mysql=&#8217;mysql &#8211;default-character-set=x&#8217;

热评日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)2010年01月25日 -- Perl学习资料打包(搜集整理By mwm5)  (1)2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)2010年01月28日 -- Perl常用模块使用例子(转载)3 (1)2010年01月27日 -- 留言 (1)]]></description>
			<content:encoded><![CDATA[<p>运行show variables like &#8220;char%&#8221; ;<br />查看当前的字符集编码情况</p>
<p>以下用“x”代表对应的字符集编码，如：gbk，gb2312，utf8，latin等，请按照需要进行修改</p>
<p>1、mysql连接服务器后，set names x;</p>
<p>2、mysql连接服务器后，set character set x ;</p>
<p>3、用带参数的mysql命令连接<br />mysql &#8211;default-character-set=x</p>
<p>4、编辑/etc/my.cnf,添加如下内容：<br />[mysql]<br />default-character-set=x</p>
<p>5、编辑/etc/bashrc，添加如下内容：<br />alias mysql=&#8217;mysql &#8211;default-character-set=x&#8217;</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" alt="" src="http://img.zemanta.com/pixy.gif?x-id=399dace7-f836-8418-b125-c83860d3ef22" /></div>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/linux_mysql_luanma_solution/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firefox插件-Autopager-网页/论坛自动翻页插件</title>
		<link>http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in</link>
		<comments>http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in#comments</comments>
		<pubDate>Sat, 30 Jan 2010 02:58:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[plugin]]></category>

		<guid isPermaLink="false">http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in</guid>
		<description><![CDATA[Firefox的Autopager插件 https://addons.mozilla.org/zh-CN/firefox/addon/4925非常强大的一个插件，启用之后可以识别网址和网页中的链接，实现网页的自动翻页比如搜索引擎或者论坛等都可以用空格或者翻页键，一直按下去一直到自己感兴趣的内容而且在浏览当前页的时候，下一页内容已经准备好了，可以节省不少时间^_^
这个插件功能非常强大，内置了丰富的站点列表，并且站点列表可以自动定期进行更新即便是遇到了不在站点列表中的网站，也可以借助向导实现自己需要的自动翻页功能

相关日志2010年01月27日 -- Firebug 1.5导致Firefox崩溃的解决办法 (0)]]></description>
			<content:encoded><![CDATA[<p>Firefox的Autopager插件 <a href="https://addons.mozilla.org/zh-CN/firefox/addon/4925" target="_blank">https://addons.mozilla.org/zh-CN/firefox/addon/4925</a><br />非常强大的一个插件，启用之后可以识别网址和网页中的链接，实现网页的自动翻页<br />比如搜索引擎或者论坛等都可以用空格或者翻页键，一直按下去一直到自己感兴趣的内容<br />而且在浏览当前页的时候，下一页内容已经准备好了，可以节省不少时间^_^</p>
<p>这个插件功能非常强大，内置了丰富的站点列表，并且站点列表可以自动定期进行更新<br />即便是遇到了不在站点列表中的网站，也可以借助向导实现自己需要的自动翻页功能</p>
<div class="youtube-video"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" height="480" width="480"><param name="src" value="http://player.youku.com/player.php/sid/XODQ0ODI3MzY=/v.swf"></param><embed type="application/x-shockwave-flash" src="http://player.youku.com/player.php/sid/XODQ0ODI3MzY=/v.swf" height="480" width="480"></embed></object></div>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月27日 -- <a href="http://perlcn.net/firebug-1-5-led-to-the-collapse-of-the-solution-firefox" title="Firebug 1.5导致Firefox崩溃的解决办法">Firebug 1.5导致Firefox崩溃的解决办法</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Xpath学习资料</title>
		<link>http://perlcn.net/xpath-learning-materials</link>
		<comments>http://perlcn.net/xpath-learning-materials#comments</comments>
		<pubDate>Fri, 29 Jan 2010 17:43:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分类]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[xpath]]></category>

		<guid isPermaLink="false">http://perlcn.net/xpath-resources</guid>
		<description><![CDATA[XPath 教程&#160; http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.htmlW3school的XPath教程 http://www.w3school.com.cn/xpath/index.asp
热评日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)2010年01月25日 -- Perl学习资料打包(搜集整理By mwm5)  (1)2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)2010年01月28日 -- Perl常用模块使用例子(转载)3 (1)2010年01月27日 -- 留言 (1)]]></description>
			<content:encoded><![CDATA[<p>XPath 教程&nbsp; <a href="http://www.w3school.com.cn/xpath/index.asp" target="_blank">http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.html</a><br />W3school的XPath教程 <a href="http://www.w3school.com.cn/xpath/index.asp" target="_blank">http://www.w3school.com.cn/xpath/index.asp</a></p>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/xpath-learning-materials/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl常用模块使用例子(转载)5</title>
		<link>http://perlcn.net/perl-examples-5</link>
		<comments>http://perlcn.net/perl-examples-5#comments</comments>
		<pubDate>Thu, 28 Jan 2010 08:24:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[examples]]></category>

		<guid isPermaLink="false">http://perlcn.net/perl-examples-5-2</guid>
		<description><![CDATA[

(31) Text::CSV_XS, parse(), fields(), error_input()
如果field里面也包含分隔符(比如&#8221;tom,jack,jeff&#8221;,&#8221;rose mike&#8221;,O&#8217;neil,&#8221;kurt,korn&#8221;)，那么我们
解析起来确实有点麻烦，
Text::CSV_XS挺方便。

#!/usr/bin/perl
use strict;
use Text::CSV_XS;
my @columns;
my $csv = Text::CSV_XS-&#62;new({
&#8216;binary&#8217; =&#62; 1,
&#8216;quote_char&#8217; =&#62; &#8216;&#8221;&#8216;,
&#8217;sep_char&#8217; =&#62; &#8216;,&#8217;
});
foreach my $line(&#60;DATA&#62;)
{
chomp $line;
if($csv-&#62;parse($line))
{
@columns = $csv-&#62;fields();
}
else
{
print &#8220;[error line : ", $csv-&#62;error_input, "]\n&#8221;;
}
map {printf(&#8220;%-14s\t&#8221;, $_)} @columns;
print &#8220;\n&#8221;;
}
exit 0;
__DATA__
id,compact_sn,name,type,count,price
37,&#8221;ITO-2003-011&#8243;,&#8221;台式机,compaq&#8221;,&#8221;128M&#8221;,&#8221;290&#8243;,&#8221;1,2900&#8243;
35,I-BJ-2003-010,&#8221;显示器,硬盘,内存&#8221;,&#8217;三星&#8217;,480,&#8221;1,4800&#8243;
55,&#8221;C2003-104&#8243;,笔记本,&#8221;Dell,Latitude,X200&#8243;,13900,&#8221;1,13900&#8243;
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
(32) Benchmark

#!/usr/bin/perl
use Benchmark;
timethese(100,
{
&#8216;local&#8217;=&#62;q
{
for(1..10000)
{
local $a=$_;
$a *= 2;
}
},
&#8216;my&#8217;=&#62;q
{
for(1..10000)
{
my $a=$_;
$a *= 2;
}
}
});
可以拿来计算algorithm耗费多少时间.

timethese(做几次iteration,{
&#8216;Algorithm名稱&#8217;=&#62;q{ 要计算时间的algorithm },
&#8216;Algorithm名稱&#8217;=&#62;q{ 要计算时间的algorithm }
});

&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
(33) HTTP::Daemon, accept(), get_request(), send_file_response()
一个简单的，只能处理单一请求的Web服务器模型。
send_file_response()方法能把Client请求的文件传送过去。

#!/usr/bin/perl
use HTTP:: Daemon;
$&#124; = 1;
my $wwwroot [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:PunctuationKerning /> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>ZH-CN</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:SpaceForUL /> <w:BalanceSingleByteDoubleByteWidth /> <w:DoNotLeaveBackslashAlone /> <w:ULTrailSpace /> <w:DoNotExpandShiftReturn /> <w:AdjustLineHeightInTable /> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> <w:UseFELayout /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"  DefSemiHidden="true" DefQFormat="false" DefPriority="99"  LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"   UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--><!--  /* Font Definitions */ @font-face 	{font-family:宋体; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-alt:SimSun; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 135135232 16 0 262145 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face 	{font-family:"\@宋体"; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	text-align:justify; 	text-justify:inter-ideograph; 	mso-pagination:none; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:宋体; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi; 	mso-font-kerning:1.0pt;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} /* Page Definitions */ @page 	{mso-page-border-surround-header:no; 	mso-page-border-surround-footer:no;} @page Section1 	{size:595.3pt 841.9pt; 	margin:72.0pt 90.0pt 72.0pt 90.0pt; 	mso-header-margin:42.55pt; 	mso-footer-margin:49.6pt; 	mso-paper-source:0; 	layout-grid:15.6pt;} div.Section1 	{page:Section1;} --><!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */ table.MsoNormalTable 	{mso-style-name:普通表格; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-font-kerning:1.0pt;}  --></p>
<p><!--[endif]--><!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1" /> </o:shapelayout></xml><![endif]--></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><span style="color: #0000ff;"><strong>(31) Text::CSV_XS, parse(), fields(), error_input()</strong></span></p>
<p>如果field里面也包含分隔符(比如&#8221;tom,jack,jeff&#8221;,&#8221;rose mike&#8221;,O&#8217;neil,&#8221;kurt,korn&#8221;)，那么我们<br />
解析起来确实有点麻烦，<span id="more-178"></span><br />
Text::CSV_XS挺方便。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use strict;<br />
use Text::CSV_XS;</p>
<p>my @columns;<br />
my $csv = Text::CSV_XS-&gt;new({<br />
&#8216;binary&#8217; =&gt; 1,<br />
&#8216;quote_char&#8217; =&gt; &#8216;&#8221;&#8216;,<br />
&#8217;sep_char&#8217; =&gt; &#8216;,&#8217;<br />
});</p>
<p>foreach my $line(&lt;DATA&gt;)<br />
{<br />
chomp $line;<br />
if($csv-&gt;parse($line))<br />
{<br />
@columns = $csv-&gt;fields();<br />
}<br />
else<br />
{<br />
print &#8220;[error line : ", $csv-&gt;error_input, "]\n&#8221;;<br />
}</p>
<p>map {printf(&#8220;%-14s\t&#8221;, $_)} @columns;<br />
print &#8220;\n&#8221;;<br />
}<br />
exit 0;</p>
<p>__DATA__<br />
id,compact_sn,name,type,count,price<br />
37,&#8221;ITO-2003-011&#8243;,&#8221;台式机,compaq&#8221;,&#8221;128M&#8221;,&#8221;290&#8243;,&#8221;1,2900&#8243;<br />
35,I-BJ-2003-010,&#8221;显示器,硬盘,内存&#8221;,&#8217;三星&#8217;,480,&#8221;1,4800&#8243;<br />
55,&#8221;C2003-104&#8243;,笔记本,&#8221;Dell,Latitude,X200&#8243;,13900,&#8221;1,13900&#8243;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(32) Benchmark</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use Benchmark;</p>
<p>timethese(100,<br />
{<br />
&#8216;local&#8217;=&gt;q<br />
{<br />
for(1..10000)<br />
{<br />
local $a=$_;<br />
$a *= 2;<br />
}<br />
},</p>
<p>&#8216;my&#8217;=&gt;q<br />
{<br />
for(1..10000)<br />
{<br />
my $a=$_;<br />
$a *= 2;<br />
}<br />
}<br />
});</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">可以拿来计算algorithm耗费多少时间.</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">timethese(做几次iteration,{<br />
&#8216;Algorithm名稱&#8217;=&gt;q{ 要计算时间的algorithm },<br />
&#8216;Algorithm名稱&#8217;=&gt;q{ 要计算时间的algorithm }<br />
});</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(33) HTTP::Daemon, accept(), get_request(), send_file_response()</strong></span></p>
<p>一个简单的，只能处理单一请求的Web服务器模型。<br />
send_file_response()方法能把Client请求的文件传送过去。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use HTTP:: Daemon;</p>
<p>$| = 1;<br />
my $wwwroot = &#8220;/home/doc/&#8221;;<br />
my $d = HTTP:: Daemon-&gt;new || die;<br />
print &#8220;Perl Web-Server is running at: &#8220;, $d-&gt;url, &#8221; &#8230;\n&#8221;;</p>
<p>while (my $c = $d-&gt;accept)<br />
{<br />
print $c &#8220;Welcome to Perl Web-Server&lt;br&gt;&#8221;;</p>
<p>if(my $r = $c-&gt;get_request)<br />
{<br />
print &#8220;Received : &#8220;, $r-&gt;url-&gt;path, &#8220;\n&#8221;;<br />
$c-&gt;send_file_response($wwwroot.$r-&gt;url-&gt;path);<br />
}</p>
<p>$c-&gt;close;<br />
}</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<strong><span style="color: #0000ff;">(34) Array::Compare, compare(), full_compare()</span></strong></p>
<p>用于数组比较。本例实现类似shell command &#8211; diff的功能。<br />
如果我们要比较的不是文件，而是比如系统信息，远程文件列表，数据库内容变化等，这个模块会给我们提供方便灵活的操作。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use Array::Compare;</p>
<p>$comp = Array::Compare-&gt;new(WhiteSpace =&gt; 1);<br />
$cmd = &#8220;top -n1 | head -4&#8243;;<br />
@a1 = `$cmd`;<br />
@a2 = `$cmd`;</p>
<p>@result = $comp-&gt;full_compare(@a1, @a2);</p>
<p>foreach(@result)<br />
{<br />
print $_ + 1, &#8220;th line:\n&#8221;;<br />
print &#8220;&gt; $a1[$_]&gt; $a2[$_]&#8220;;<br />
print &#8220;&#8212;&#8211;\n&#8221;;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><strong><span style="color: #0000ff;">(35) Algorithm::Diff, diff()</span></strong></p>
<p class="MsoNormal" style="text-align: left;">用于文件比较。实现类似unix command diff的功能。</p>
<blockquote><p>#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use Algorithm::Diff qw(diff);</p>
<p>die(&#8220;Usage: $0 file1 file2\n&#8221;) if @ARGV != 2;</p>
<p>my ($file1, $file2) = @ARGV;<br />
-T $file1 or die(&#8220;$file1: binary\n&#8221;);<br />
-T $file2 or die(&#8220;$file2: binary\n&#8221;);</p>
<p>@f1 = `cat $file1 `;<br />
@f2 = `cat $file2 `;</p>
<p>$diffs = diff(@f1, @f2);</p>
<p>foreach $chunk (@$diffs)<br />
{<br />
foreach $line (@$chunk)<br />
{<br />
my ($sign, $lineno, $text) = @$line;<br />
printf &#8220;$sign%d %s&#8221;, $lineno+1, $text;<br />
}</p>
<p>print &#8220;&#8212;&#8212;&#8211;\n&#8221;;<br />
}</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(36) List::Util, max(), min(), sum(), maxstr(), minstr()&#8230;</strong></span></p>
<p>列表实用工具集。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use List::Util qw/max min sum maxstr minstr shuffle/;</p>
<p>@s = (&#8216;hello&#8217;, &#8216;ok&#8217;, &#8216;china&#8217;, &#8216;unix&#8217;);</p>
<p>print max 1..10; #10<br />
print min 1..10; #1<br />
print sum 1..10; #55<br />
print maxstr @s; #unix<br />
print minstr @s; #china<br />
print shuffle 1..10; #radom order</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(37) HTML::Parser</strong></span></p>
<p>解析HTML。本例为找出一个html文本中的所有图片的地址。（即IMG标签中的src）</p>
<p>子程序start中的&#8221;$tag =~ /^img$/&#8221;为过滤出img标签。<br />
如果换为&#8221;$tag =~ /^a$/&#8221;，即是找出所有的链接地址。</p>
<p>详细的方法介绍，请见`<a href="http://perlcn.net">perl</a>doc HTML::Parser`</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use LWP::Simple;<br />
use HTML::Parser;</p>
<p>my $url = shift || &#8220;http://www.chinaunix.net&#8221;;<br />
my $content = LWP::Simple::get($url) or die(&#8220;unknown url\n&#8221;);</p>
<p>my $parser = HTML::Parser-&gt;new(<br />
start_h =&gt; [&amp;start, "tagname, attr"],<br />
);</p>
<p>$parser-&gt;parse($content);<br />
exit 0;</p>
<p>sub start<br />
{<br />
my ($tag, $attr, $dtext, $origtext) = @_;<br />
if($tag =~ /^img$/)<br />
{<br />
if (defined $attr-&gt;{&#8217;src&#8217;} )<br />
{<br />
print &#8220;$attr-&gt;{&#8217;src&#8217;}\n&#8221;;<br />
}<br />
}<br />
}</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(38) Mail::Sender</strong></span></p>
<p>1)发送附件</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use Mail::Sender;</p>
<p>$sender = new Mail::Sender{<br />
smtp =&gt; &#8216;localhost&#8217;,<br />
from =&gt; &#8216;xxx@localhost&#8217;<br />
};<br />
$sender-&gt;MailFile({<br />
to =&gt; &#8216;xxx@xxx.com&#8217;,<br />
subject =&gt; &#8216;hello&#8217;,<br />
file =&gt; &#8216;Attach.txt&#8217;<br />
});<br />
$sender-&gt;Close();</p>
<p>print $Mail::Sender::Error eq &#8220;&#8221; ? &#8220;send ok!\n&#8221; : $Mail::Sender::Error;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">2)发送html内容</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use Mail::Sender;</p>
<p>open(IN, &#8220;&lt; ./index.html&#8221;) or die(&#8220;&#8221;);</p>
<p>$sender = new Mail::Sender{<br />
smtp =&gt; &#8216;localhost&#8217;,<br />
from =&gt; &#8216;xxx@localhost&#8217;<br />
};</p>
<p>$sender-&gt;Open({<br />
to =&gt; &#8216;xxx@xxx.com&#8217;,<br />
subject =&gt; &#8216;xxx&#8217;,<br />
msg =&gt; &#8220;hello!&#8221;,<br />
ctype =&gt; &#8220;text/html&#8221;,<br />
encoding =&gt; &#8220;7bit&#8221;,<br />
});</p>
<p>while(&lt;IN&gt;)<br />
{<br />
$sender-&gt;SendEx($_);<br />
}<br />
close IN;<br />
$sender-&gt;Close();</p>
<p>print $Mail::Sender::Error eq &#8220;&#8221; ? &#8220;send ok!\n&#8221; : $Mail::Sender::Error;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">发送带有图片或其他信息的html邮件，请看`<a href="http://perlcn.net">perl</a>doc Mail::Sender`<br />
中的&#8221;Sending HTML messages with inline images&#8221;及相关部分。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(40) Image::Magick</strong></span></p>
<p>http://www.imagemagick.org/www/<a href="http://perlcn.net">perl</a>.html</p>
<blockquote>
<blockquote>
<p class="MsoNormal" style="text-align: left;">
</blockquote>
<p>#!/usr/local/bin/<a href="http://perlcn.net">perl</a><br />
use Image::Magick;</p>
<p>my($image, $x);</p>
<p>$image = Image::Magick-&amp;amp;gt;new;<br />
$x = $image-&amp;amp;gt;Read(&#8216;girl.png&#8217;, &#8216;logo.png&#8217;, &#8216;rose.png&#8217;);<br />
warn &#8220;$x&#8221; if &#8220;$x&#8221;;</p>
<p>$x = $image-&amp;amp;gt;Crop(geometry=&amp;amp;gt;&#8217;100&#215;100&#8243;+100&#8243;+100&#8242;);<br />
warn &#8220;$x&#8221; if &#8220;$x&#8221;;</p>
<p>$x = $image-&amp;amp;gt;Write(&#8216;x.png&#8217;);<br />
warn &#8220;$x&#8221; if &#8220;$x&#8221;;</p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">
<p>The script reads three images, crops them, and writes a single image as a GIF animation<br />
sequence. In many cases you may want to access individual images of a sequence. The next<br />
example illustrates how this is done:<br />
#!/usr/local/bin/<a href="http://perlcn.net">perl</a><br />
use Image::Magick;</p>
<p>my($image, $p, $q);</p>
<p>$image = new Image::Magick;<br />
$image-&amp;gt;Read(&#8216;x1.png&#8217;);<br />
$image-&amp;gt;Read(&#8216;j*.jpg&#8217;);<br />
$image-&amp;gt;Read(&#8216;k.miff[1, 5, 3]&#8216;);<br />
$image-&amp;gt;Contrast();<br />
for ($x = 0; $image-&amp;gt;[x]; $x++)<br />
{<br />
$image-&amp;gt;[x]-&amp;gt;Frame(&#8216;100&#215;200&#8242;) if $image-&amp;gt;[x]-&amp;gt;Get(&#8216;magick&#8217;) eq &#8216;GIF&#8217;;<br />
undef $image-&amp;gt;[x] if $image-&amp;gt;[x]-&amp;gt;Get(&#8216;columns&#8217;) &amp;lt; 100;<br />
}<br />
$p = $image-&amp;gt;[1];<br />
$p-&amp;gt;Draw(stroke=&amp;gt;&#8217;red&#8217;, primitive</p>
<p class="MsoNormal" style="text-align: left;">
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">Suppose you want to start out with a 100 by 100 pixel white canvas with a red pixel in the<br />
center. Try</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">$image = Image::Magick-&gt;new;<br />
$image-&gt;Set(size=&gt;&#8217;100&#215;100&#8242;);<br />
$image-&gt;ReadImage(&#8216;xc:white&#8217;);<br />
$image-&gt;Set(&#8216;pixel[49,49]&#8216;=&gt;&#8217;red&#8217;);</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">Or suppose you want to convert your color image to grayscale:</p>
<blockquote><p>$image-&gt;Quantize(colorspace=&gt;&#8217;gray&#8217;);</p></blockquote>
<p class="MsoNormal" style="text-align: left;">Here we annotate an image with a Taipai TrueType font:</p>
<blockquote><p>$text = &#8216;Works like magick!&#8217;;<br />
$image-&gt;Annotate(font=&gt;&#8217;kai.ttf&#8217;, pointsize=&gt;40, fill=&gt;&#8217;green&#8217;, text=&gt;$text);</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">Other clever things you can do with a PerlMagick objects include</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">$i = $#$p&#8221;+1&#8243;; # return the number of images associated with object p<br />
push(@$q, @$p); # push the images from object p onto object q<br />
@$p = (); # delete the images but not the object p<br />
$p-&gt;Convolve([1, 2, 1, 2, 4, 2, 1, 2, 1]); # 3&#215;3 Gaussian kernel</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<strong><span style="color: #0000ff;">(41)Data::SearchReplace</span></strong></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/user/bin/<a href="http://perlcn.net">perl</a><br />
use Data::SearchReplace (&#8217;sr&#8217;);<br />
sr({ SEARCH =&gt; &#8217;searching&#8217;, REPLACE =&gt; &#8216;replacing&#8217;}, \$complex_var);</p>
<p># or OO</p>
<p>use Data::SearchReplace;<br />
$sr = Data::SearchReplace-&gt;new({ SEARCH =&gt; &#8217;search for this&#8217;,<br />
REPLACE =&gt; &#8216;replace with this&#8217; });</p>
<p>$sr-&gt;sr(\$complex_var);<br />
$sr-&gt;sr(\$new_complex_var);</p>
<p># if you want more control over your search/replace pattern you<br />
# can pass an entire regex instead complete with attributes</p>
<p>sr({ REGEX =&gt; &#8217;s/nice/great/gi&#8217; }, \$complex_var);</p>
<p># you can even use a subroutine if you&#8217;d like<br />
# the input variable is the value and the return sets the new<br />
# value.</p>
<p>sr({ CODE =&gt; sub { uc($_[0]) } }, \$complex_var);</p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></p>
<p class="MsoNormal" style="text-align: left;">use Data::SearchReplace qw(sr);<br />
sr({SEARCH =&gt; &#8216;find&#8217;, REPLACE =&gt; &#8216;replace&#8217;}, \@data);<br />
sr({REGEX =&gt; &#8217;s/find/replace/g&#8217;}, \%data);<br />
sr({CODE =&gt; sub {uc($_[0])} }, \@data);</p>
</blockquote>
<p class="MsoNormal">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-4" title="Perl常用模块使用例子(转载)4">Perl常用模块使用例子(转载)4</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-2" title="Perl常用模块使用例子(转载)2">Perl常用模块使用例子(转载)2</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-example-1" title="Perl常用模块使用例子(转载)1">Perl常用模块使用例子(转载)1</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perl-examples-5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl常用模块使用例子(转载)4</title>
		<link>http://perlcn.net/perl-examples-4</link>
		<comments>http://perlcn.net/perl-examples-4#comments</comments>
		<pubDate>Thu, 28 Jan 2010 08:15:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[examples]]></category>

		<guid isPermaLink="false">http://perlcn.net/perl-examples-4</guid>
		<description><![CDATA[

(21) Term::ANSIColor 例子

#!/usr/bin/perl
use strict;
use Term::ANSIColor qw(:constants);
$Term::ANSIColor::AUTORESET = 1;
$&#124; = 1;
my $str = &#8220;Welcome to chinaunix ^_^!\n&#8221;;
for my $i(0..length($str)-1)
{
print BOLD RED substr($str, $i, 1);
select(undef, undef, undef, 0.3);
}
exit 0;
查看ANSIColor.pm可以得知作者是利用ANSI转义序列，改变终端字符颜色的。
print &#8220;\e[34m\n";
即是改变前景色为blue;
shell命令为echo -e "\033[31m";#改变前景色为红色。
(freeBSD，Solaris下此命令测试OK)
--------------------------------------------------------------------------------
(21) Term::ANSIColor 例子二

#!/usr/bin/perl
use strict;
use Term::ANSIColor qw(:constants);
$Term::ANSIColor::AUTORESET = 1;
$&#124; = 1;
print "\e[20;40H";
my $str = "Welcome to chinaunix ^_^!\n";
print BOLD BLINK $str;
exit 0;
转义序列echo -e "\033[20;40H";可以改变光标位置。
perl中就可以：print "\e[20;40H";
--------------------------------------------------------------------------------
(22) Date::Calc Calendar(), [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */ table.MsoNormalTable 	{mso-style-name:普通表格; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-font-kerning:1.0pt;}  --></p>
<p><!--[endif]--></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><span style="color: #0000ff;"><strong>(21) Term::ANSIColor 例子</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Term::ANSIColor qw(:constants);</p>
<p>$Term::ANSIColor::AUTORESET = 1;<span id="more-175"></span></p>
<p>$| = 1;<br />
my $str = &#8220;Welcome to chinaunix ^_^!\n&#8221;;</p>
<p>for my $i(0..length($str)-1)<br />
{<br />
print BOLD RED substr($str, $i, 1);<br />
select(undef, undef, undef, 0.3);<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">查看ANSIColor.pm可以得知作者是利用ANSI转义序列，改变终端字符颜色的。<br />
print &#8220;\e[34m\n";<br />
即是改变前景色为blue;</p>
<p>shell命令为echo -e "\033[31m";#改变前景色为红色。<br />
(freeBSD，Solaris下此命令测试OK)</p>
<p>--------------------------------------------------------------------------------<br />
<span style="color: #0000ff;"><strong>(21) Term::ANSIColor 例子二</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Term::ANSIColor qw(:constants);</p>
<p>$Term::ANSIColor::AUTORESET = 1;</p>
<p>$| = 1;</p>
<p>print "\e[20;40H";<br />
my $str = "Welcome to chinaunix ^_^!\n";</p>
<p>print BOLD BLINK $str;<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">转义序列echo -e "\033[20;40H";可以改变光标位置。<br />
<a href="http://perlcn.net">perl</a>中就可以：print "\e[20;40H";</p>
<p>--------------------------------------------------------------------------------<br />
<span style="color: #0000ff;"><strong>(22) Date::Calc Calendar(), Today()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Date::Calc qw(Calendar Today);</p>
<p>my $year = "2003";<br />
my $month = "6";<br />
my $day;</p>
<p>my $cal = Calendar($year, $month);<br />
(undef, undef, $day) = Today();</p>
<p>$cal =~ s/$day/e[5me[31m$daye[0m/;</p>
<p>print $cal;<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">本例子打印出一个2003年6月份的日历，当天日期用红色的闪烁数字表示。</p>
<p>Date::Calc提供了时间日期计算的另一种方式（一种是Date::Manip），<br />
大量简单方便的方法（函数）供使用者调用。</p>
<p>在例子中的年和月我是自己指定的，也可以<br />
($year, $month, $day) = Today();</p>
<p>颜色和闪烁是用ANSI escape sequences。<br />
详细说明尽在ANSIColor.pm source和<a href="http://perlcn.net">perl</a>doc Term::ANSIColor里。<br />
（<a href="http://perlcn.net">perl</a>doc Term::ANSIColor其实也在ANSIColor.pm source里） ：）</p>
<p>--------------------------------------------------------------------------------<br />
<span style="color: #0000ff;"><strong>(23) Term::Cap, Tgetend(), Tgoto, Tputs()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Term::Cap;</p>
<p>$| = 1;<br />
my $i = 1;<br />
my $flag = 0;</p>
<p>my $tcap = Term::Cap-&gt;Tgetent({TERM =&gt; undef, OSPEED =&gt; 1});<br />
$tcap-&gt;Tputs('cl', 1, *STDOUT);#clear screen</p>
<p>while($i)<br />
{<br />
if($i &gt; 50 || $flag == 1)<br />
{<br />
$i --;<br />
$flag = 1;<br />
$flag = 0 if($i == 1);<br />
}<br />
else<br />
{<br />
$i ++;<br />
$flag = 0;<br />
}</p>
<p>$tcap-&gt;Tgoto('cm', $i, 15, *STDOUT);#move cursor<br />
print " welcome to chinaunix! ";<br />
select(undef, undef, undef, 0.02);<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">Term::Cap 终端控制模块。<br />
代码效果：一个左右移动的字串 "welcome to chinaunix! " ：）</p>
<p>--------------------------------------------------------------------------------<br />
<span style="color: #0000ff;"><strong>(24) HTTPD::Log::Filter</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use HTTPD::Log::Filter;</p>
<p>my $filter = HTTPD::Log::Filter-&gt;new(format =&gt; "CLF",<br />
capture =&gt; ['request', 'host']);</p>
<p>foreach(`cat access_log`)<br />
{<br />
chomp;<br />
unless( $filter-&gt;filter($_) )<br />
{<br />
print &#8220;[$_]\n&#8221;;<br />
next;<br />
}<br />
print $filter-&gt;request, &#8220;\n&#8221;;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">如果我们工作中经常需要分析Apache日志，这个模块可以提供一些方便。<br />
创建对象实例以后，用filter方法来过滤，没有正确匹配的行将返回false,<br />
然后用相应的方法print出我们需要的数据。(host,request,date&#8230;等等方法，<br />
由capture选项以参数引入)<br />
可以用re方法打印出作者所使用的匹配模式：</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">use HTTPD::Log::Filter;<br />
print HTTPD::Log::Filter-&gt;new(format=&gt;&#8221;CLF&#8221;,capture=&gt;['request'])-&gt;re;</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">详见<a href="http://perlcn.net">perl</a>doc HTTPD::Log::Filter. enjoy it</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(25) Net::LDAP</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use Net::LDAP;</p>
<p>## get a object of ldap<br />
$ldap = Net::LDAP-&gt;new(&#8220;1.1.1.1&#8243;, port =&gt;&#8221;389&#8243;, version =&gt; 3) or die &#8220;$@&#8221;;<br />
# object of Net::LDAP::Message<br />
$mesg = $ldap-&gt;bind($_cer_id, password =&gt; $_cer_pw); # 查詢用的ID/PASSWD<br />
if($mesg-&gt;is_error) {die $mesg-&gt;error;}<br />
$mesg = $ldap-&gt;search(<br />
base =&gt; &#8220;o=abc,c=tt&#8221;, # 起始點<br />
scope =&gt; &#8220;sub&#8221;, # 範圍<br />
filter =&gt; &#8220;(uid=apile)&#8221;, # 條件<br />
attrs =&gt; ["cn"], # 要取得的attribute<br />
typesonly =&gt; 0 );</p>
<p>my $max_len = $mesg-&gt;count; ## get number of entry</p>
<p>#&#8211;取得中文姓名，可能不只一筆<br />
for($i=0;$i&lt;$max_len;$i++){<br />
$entry = $mesg-&gt;entry($i);<br />
$cname = $entry-&gt;get_value(&#8220;cn&#8221;); # get chinese name<br />
}</p>
<p>#&#8211;作密碼認證<br />
$mesg = $ldap-&gt;bind($entry-&gt;dn, password =&gt; &#8220;abc&#8221;, version =&gt; 3)<br />
||die &#8220;can&#8217;t connect to ldap&#8221;;<br />
if($mesg-&gt;code) { print &#8220;verification is failed&#8221;}<br />
else{ print &#8220;success&#8221;}</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">LDAP version 3..可以用于查询基本资料、验证密码之用..</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<strong><span style="color: #0000ff;">(26) Net::SMTP mail(), to(), data(), datasend(), auth()</span></strong></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use strict;<br />
use Net::SMTP;</p>
<p>my $smtp = Net::SMTP-&gt;new(&#8217;smtp.sohu.com&#8217;, Timeout =&gt; 10, Debug =&gt; 0)<br />
or die &#8220;new error\n&#8221;;<br />
#$smtp-&gt;auth(&#8220;user&#8221;, &#8220;passwd&#8221;) or die &#8220;auth error\n&#8221;;<br />
$smtp-&gt;mail(&#8217;some&#8217;);<br />
$smtp-&gt;to(&#8217;some@some.com&#8217;);<br />
$smtp-&gt;data(&#8220;chinaunix,哈楼你好啊!\n:)&#8221;);<br />
$smtp-&gt;quit;</p>
<p>exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">有的SMPT Server需要Authentication，那么就使用auth()方法进行验证。<br />
Debug模式打开，可以看到详细的SMTP命令代码。也有助于我们排错。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(27) MIME::Base64, encode_base64(), decode_base64()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w</p>
<p>use strict;<br />
use MIME::Base64;</p>
<p>foreach(&lt;DATA&gt;)<br />
{<br />
print decode_base64($_);<br />
}<br />
exit 0;</p>
<p>__DATA__<br />
xOO6w6Osu7bTrcC0tb1jaGluYXVuaXguY29tIFtwZXJsXbDmIQo=<br />
1eLKx2Jhc2U2NLHgwuu1xMD919OjrNPJTUlNRTo6QmFzZTY0xKO/6cC0veLC66GjCg==<br />
cGVybGRvYyBNSU1FOjpCYXNlNjQgZm9yIGRldGFpbHMsIGVuam95IGl0IDopCg==</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">用来处理MIME/BASE64编码。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(28) Net::IMAP::Simple, login(), mailboxes(), select(), get()&#8230;</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a></p>
<p>use strict;<br />
use Net::IMAP::Simple;</p>
<p>my $server = new Net::IMAP::Simple( &#8216;imap.0451.com&#8217; );<br />
$server-&gt;login( &#8216;user_name&#8217;, &#8216;passwd&#8217;);</p>
<p>#show the mailboxs<br />
#map {print &#8220;$_\n&#8221;;} $server-&gt;mailboxes();</p>
<p>#show mail&#8217;s content<br />
my $n = $server-&gt;select( &#8216;inbox&#8217; ) or die &#8220;no this folder\n&#8221;;<br />
foreach my $msg ( 1..$n )<br />
{<br />
my $lines = $server-&gt;get( $msg );<br />
print @$lines;<br />
print &#8220;_________________ Press enter key to view another! &#8230;&#8230; __________________\n&#8221;;<br />
read STDIN, my $key, 1;<br />
}</p>
<p>exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">在取得中文的Folder时，会出现乱码的情况，<br />
这个问题现在没有解决。英文的Folder则没问题。</p>
<p>IMAP协议，默认端口为143，可以用telnet登录。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">telnet imap.xxx.com 143<br />
2 login user pass<br />
2 list &#8220;&#8221; *<br />
2 select inbox<br />
&#8230;&#8230;</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(29) Bio::DB::GenBank, Bio::SeqIO</strong></span></p>
<p>bio<a href="http://perlcn.net">perl</a>(http://bio<a href="http://perlcn.net">perl</a>.org/)模块使用&#8211;生物信息学中用的模块<br />
功能：根据核酸的gi号自动从GenBank中提取FASTA格式的序列，可以多序列提取。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w</p>
<p>use Bio::DB::GenBank;<br />
use Bio::SeqIO;<br />
my $gb = new Bio::DB::GenBank;</p>
<p>my $seqout = new Bio::SeqIO(-fh =&gt; *STDOUT, -format =&gt; &#8216;fasta&#8217;);</p>
<p># if you want to get a bunch of sequences use the batch method<br />
my $seqio = $gb-&gt;get_Stream_by_id([ qw(27501445 2981014)]);</p>
<p>while( defined ($seq = $seqio-&gt;next_seq )) {<br />
$seqout-&gt;write_seq($seq);<br />
}</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(30) Spreadsheet::ParseExcel</strong></span></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><a href="http://perlcn.net">perl</a>解析Excel文件的例子。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w</p>
<p>use strict;<br />
use Spreadsheet::ParseExcel;<br />
use Spreadsheet::ParseExcel::FmtUnicode; #gb support</p>
<p>my $oExcel = new Spreadsheet::ParseExcel;</p>
<p>die &#8220;You must provide a filename to $0 to be parsed as an Excel file&#8221; unless @ARGV;<br />
my $code = $ARGV[1] || &#8220;CP936&#8243;; #gb support<br />
my $oFmtJ = Spreadsheet::ParseExcel::FmtUnicode-&gt;new(Unicode_Map =&gt; $code); #gb support<br />
my $oBook = $oExcel-&gt;Parse($ARGV[0], $oFmtJ);<br />
my($iR, $iC, $oWkS, $oWkC);<br />
print &#8220;FILE :&#8221;, $oBook-&gt;{File} , &#8220;\n&#8221;;<br />
print &#8220;COUNT :&#8221;, $oBook-&gt;{SheetCount} , &#8220;\n&#8221;;</p>
<p>print &#8220;AUTHOR:&#8221;, $oBook-&gt;{Author} , &#8220;\n&#8221;<br />
if defined $oBook-&gt;{Author};</p>
<p>for(my $iSheet=0; $iSheet &lt; $oBook-&gt;{SheetCount} ; $iSheet++)<br />
{<br />
$oWkS = $oBook-&gt;{Worksheet}[$iSheet];<br />
print &#8220;&#8212;&#8212;&#8212; SHEET:&#8221;, $oWkS-&gt;{Name}, &#8220;\n&#8221;;<br />
for(my $iR = $oWkS-&gt;{MinRow} ;<br />
defined $oWkS-&gt;{MaxRow} &amp;&amp; $iR &lt;= $oWkS-&gt;{MaxRow} ;<br />
$iR++)<br />
{<br />
for(my $iC = $oWkS-&gt;{MinCol} ;<br />
defined $oWkS-&gt;{MaxCol} &amp;&amp; $iC &lt;= $oWkS-&gt;{MaxCol} ;<br />
$iC++)<br />
{<br />
$oWkC = $oWkS-&gt;{Cells}[$iR][$iC];<br />
print &#8220;( $iR , $iC ) =&gt;&#8221;, $oWkC-&gt;Value, &#8220;\n&#8221; if($oWkC);<br />
}<br />
}<br />
}</p></blockquote>
<p class="MsoNormal">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-5" title="Perl常用模块使用例子(转载)5">Perl常用模块使用例子(转载)5</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-2" title="Perl常用模块使用例子(转载)2">Perl常用模块使用例子(转载)2</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-example-1" title="Perl常用模块使用例子(转载)1">Perl常用模块使用例子(转载)1</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perl-examples-4/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl常用模块使用例子(转载)3</title>
		<link>http://perlcn.net/perl-examples-3</link>
		<comments>http://perlcn.net/perl-examples-3#comments</comments>
		<pubDate>Thu, 28 Jan 2010 08:11:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[examples]]></category>

		<guid isPermaLink="false">http://perlcn.net/perl-examples-3</guid>
		<description><![CDATA[

(11)ExtUtils::Installed, new(), modules(), version()
#查看已经安装的模块的相应信息。

#!/usr/bin/perl
use strict;
use ExtUtils::Installed;
my $inst= ExtUtils::Installed-&#62;new();
my @modules = $inst-&#62;modules();
foreach(@modules)
{
my $ver = $inst-&#62;version($_) &#124;&#124; &#8220;???&#8221;;
printf(&#8220;%-12s &#8212; %s\n&#8221;, $_, $ver);
}
exit 0;
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
(12) DBI, connect(), prepare(), execute(),fetchrow_array()

#!/usr/bin/perl
use strict;
use DBI;
my $dbh = DBI-&#62;connect(&#8220;dbi:mysql:dbname&#8221;, &#8216;user&#8217;,'passwd&#8217;, &#8221;)
or die &#8220;can&#8217;t connect!\n&#8221;;
my $sql = qq/show variables/;
my $sth = $dbh-&#62;prepare($sql);
$sth-&#62;execute();
while(my @array=$sth-&#62;fetchrow_array())
{
printf(&#8220;%-35s&#8221;, $_) foreach(@array);
print &#8220;\n&#8221;;
}
$dbh -&#62; disconnect();
exit 0;
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
(13) Getopt::Std
#命令行参数解析。

#!/usr/bin/perl
use strict;
use Getopt::Std;
my %opts;
getopts(&#8220;c:hv&#8221;, %opts);
foreach(keys %opts)
{
/c/ [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 10]></p>
<p><mce:style><!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:普通表格; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-font-kerning:1.0pt;} --></p>
<p><!--[endif]--></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><span style="color: #0000ff;"><strong>(11)ExtUtils::Installed, new(), modules(), version()</strong></span></p>
<p>#查看已经安装的模块的相应信息。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use ExtUtils::Installed;<span id="more-173"></span></p>
<p>my $inst= ExtUtils::Installed-&gt;new();<br />
my @modules = $inst-&gt;modules();</p>
<p>foreach(@modules)<br />
{<br />
my $ver = $inst-&gt;version($_) || &#8220;???&#8221;;<br />
printf(&#8220;%-12s &#8212; %s\n&#8221;, $_, $ver);<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(12) DBI, connect(), prepare(), execute(),fetchrow_array()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use DBI;</p>
<p>my $dbh = DBI-&gt;connect(&#8220;dbi:mysql:dbname&#8221;, &#8216;user&#8217;,'passwd&#8217;, &#8221;)<br />
or die &#8220;can&#8217;t connect!\n&#8221;;<br />
my $sql = qq/show variables/;<br />
my $sth = $dbh-&gt;prepare($sql);<br />
$sth-&gt;execute();</p>
<p>while(my @array=$sth-&gt;fetchrow_array())<br />
{<br />
printf(&#8220;%-35s&#8221;, $_) foreach(@array);<br />
print &#8220;\n&#8221;;<br />
}<br />
$dbh -&gt; disconnect();<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<span style="color: #0000ff;"><strong>(13) Getopt::Std</strong></span></p>
<blockquote><p>#命令行参数解析。</p></blockquote>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Getopt::Std;</p>
<p>my %opts;<br />
getopts(&#8220;c:hv&#8221;, %opts);</p>
<p>foreach(keys %opts)<br />
{<br />
/c/ &amp;&amp; print &#8220;welcome to &#8220;, $opts{$_} ||<br />
&#8220;ChinaUnix&#8221;, &#8220;!\n&#8221;;<br />
/h/ &amp;&amp; print &#8220;Usage : $0 -[hv] -[c msg] \n&#8221;;<br />
/v/ &amp;&amp; print &#8220;This is demo, version 0.001.001 built for<br />
$^O\n&#8221;;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<span style="color: #0000ff;"><strong>(14) Proc::ProcessTable</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#直接访问Unix进程表，类似ps command。</p>
<p>#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Proc::ProcessTable;</p>
<p>my $pt = new Proc::ProcessTable;</p>
<p>foreach(reverse sort @{$pt-&gt;table})<br />
{<br />
print $_-&gt;pid, &#8221; =&gt; &#8220;;<br />
print $_-&gt;cmndline, &#8220;\n&#8221;;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(15) Shell</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Shell;</p>
<p>print &#8220;now is : &#8220;, date();<br />
print &#8220;current time is : &#8220;, date(&#8220;+%T&#8221;);</p>
<p>my @dirs = ls(&#8220;-laF&#8221;);<br />
foreach(@dirs)<br />
{<br />
print if(//$/);#print directory<br />
}<br />
exit 0;</p>
<p>#Shell命令直接做为函数，在Perl中调用。</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><span style="color: #0000ff;"><strong>(16) Time::HiRes, sleep(), time()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
#Another use of Time::HiRes Module.</p>
<p>use strict;<br />
use Time::HiRes qw(sleep time);</p>
<p>$| = 1;<br />
my $before = time;<br />
for my $i (1..100)<br />
{<br />
print &#8220;$i\n&#8221;;<br />
sleep(0.01);<br />
}<br />
printf(&#8220;time used : %.5f seconds\n&#8221;, time &#8211; $before);<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">use Time::HiRes后，此模块提供sleep(),<br />
alarm(), time()的增强版以<br />
取代<a href="http://perlcn.net">perl</a>内置的相应函数。<br />
其中sleep()和alarm()的参数可以是小数。比如sleep(0.1)表示休眠0.1秒，<br />
time()可以返回浮点数。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(17) HTML::LinkExtor, links(), parse_file()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use HTML::LinkExtor;</p>
<p>my $p = new HTML::LinkExtor;<br />
$p-&gt;parse_file(*DATA);</p>
<p>foreach my $links ($p-&gt;links())<br />
{<br />
map {print &#8220;$_ &#8220;} @{$links};<br />
print &#8220;\n&#8221;;<br />
}<br />
exit 0;</p>
<p>__DATA__</p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.1 Strict//EN&#8221;<br />
&#8220;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&#8221;&gt;<br />
&lt;html xmlns=&#8221;http://www.w3.org/1999/xhtml&#8221;<br />
xml:lang=&#8221;en-US&#8221;&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html&#8221;/&gt;<br />
&lt;title&gt;CPAN&lt;/title&gt;<br />
&lt;!&#8211; Copyright Jarkko Hietaniemi &lt;jhi@iki.fi&gt; 1998-2002<br />
All Rights Reserved.<br />
The CPAN Logo provided by J.C. Thorpe.<br />
You may distribute this document either under the Artistic License<br />
(comes with Perl) or the GNU Public License, whichever suits you.</p>
<p>You are not allowed to remove or alter these comments. &#8211;&gt;<br />
&lt;!&#8211; $Id: cpan-index.html,v 1.7 2003/02/17 10:23:46 jhi Exp $ &#8211;&gt;<br />
&lt;link rev=&#8221;made&#8221;<br />
href=&#8221;mailto:cpan@<a href="http://perlcn.net">perl</a>.org&#8221;&gt;&lt;/link&gt;<br />
&lt;style type=&#8221;text/css&#8221;&gt;<br />
&lt;!&#8211;</p>
<p>body{<br />
color:black;<br />
background:white;<br />
margin-left:2%;<br />
margin-right:2%;<br />
}</p>
<p>h1{<br />
text-align:center;<br />
}</p>
<p>img {<br />
vertical-align: 50%;<br />
border: 0;<br />
}</p>
<p>.left{<br />
text-align:left;<br />
float:none;<br />
}</p>
<p>.center{<br />
text-align:center;<br />
float:none;<br />
}</p>
<p>.right{<br />
text-align:right;<br />
float:none;<br />
}</p>
<p>&#8211;&gt;<br />
&lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;</p>
<p>&lt;table width=&#8221;100%&#8221;&gt;<br />
&lt;tr&gt;<br />
&lt;td rowspan=&#8221;2&#8243;&gt;<br />
&lt;div class=&#8221;left&#8221;&gt;<br />
&lt;img src=&#8221;misc/jpg/cpan.jpg&#8221;<br />
alt=&#8221;[CPAN Logo]&#8221; height=&#8221;121&#8243; width=&#8221;250&#8243;/&gt;<br />
&lt;/div&gt;<br />
&lt;/td&gt;<br />
&lt;td&gt;<br />
&lt;div class=&#8221;right&#8221;&gt;<br />
&lt;h1&gt;&lt;a id=&#8221;top&#8221;&gt;Comprehensive Perl Archive<br />
Network&lt;/a&gt;&lt;/h1&gt;<br />
&lt;/div&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;<br />
&lt;div class=&#8221;center&#8221;&gt;<br />
2003-06-10 online since 1995-10-26&lt;br/&gt;1662 MB 246 mirrors&lt;br/&gt;2903<br />
authors 4767 modules<br />
&lt;/div&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td colspan=&#8221;2&#8243;&gt;<br />
&lt;p class=&#8221;left&#8221;&gt;<br />
Welcome to CPAN! Here you will find All Things Perl.<br />
&lt;/p&gt;<br />
&lt;/td&gt;<br />
&lt;td&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;</p>
<p>&lt;hr/&gt;</p>
<p>&lt;table width=&#8221;100%&#8221;&gt;</p>
<p>&lt;tr&gt;</p>
<p>&lt;td&gt;</p>
<p>&lt;h1&gt;Browsing&lt;/h1&gt;<br />
&lt;ul&gt;<br />
&lt;li&gt;&lt;a href=&#8221;modules/index.html&#8221;&gt;Perl<br />
modules&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;scripts/index.html&#8221;&gt;Perl<br />
scripts&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;ports/index.html&#8221;&gt;Perl binary distributions<br />
(&#8220;ports&#8221;)&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;src/README.html&#8221;&gt;Perl source<br />
code&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;RECENT.html&#8221;&gt;Perl recent<br />
arrivals&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a<br />
href=&#8221;http://search.cpan.org/recent&#8221;&gt;recent&lt;/a&gt; Perl<br />
modules&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;SITES.html&#8221;&gt;CPAN<br />
_fcksavedurl=&#8221;"SITES.html&#8221;&gt;CPAN&#8221; sites&lt;/a&gt;<br />
list&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://mirrors.cpan.org/&#8221;&gt;CPAN<br />
sites&lt;/a&gt; map&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>&lt;/td&gt;</p>
<p>&lt;td&gt;</p>
<p>&lt;h1&gt;Searching&lt;/h1&gt;</p>
<p>&lt;ul&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://kobesearch.cpan.org/&#8221;&gt;Perl core and<br />
CPAN modules documentation &lt;/a&gt; (Randy Kobes)&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://www.<a href="http://perlcn.net">perl</a>doc.com/&#8221;&gt;Perl core<br />
documentation&lt;/a&gt; (Carlos Ramirez)&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://search.cpan.org/&#8221;&gt;CPAN modules,<br />
distributions, and authors&lt;/a&gt; (search.cpan.org)&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://wait.cpan.org/&#8221;&gt;CPAN modules<br />
documentation&lt;/a&gt; (Ulrich Pfeifer)&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>&lt;h1&gt;FAQ etc&lt;/h1&gt;</p>
<p>&lt;ul&gt;<br />
&lt;li&gt;&lt;a href=&#8221;misc/cpan-faq.html&#8221;&gt;CPAN Frequently Asked<br />
Questions&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://lists.cpan.org/&#8221;&gt;Perl Mailing<br />
Lists&lt;/a&gt;&lt;/li&gt;<br />
&lt;li&gt;&lt;a href=&#8221;http://bookmarks.cpan.org/&#8221;&gt;Perl<br />
Bookmarks&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;</p>
<p>&lt;p&gt;&lt;small&gt;<br />
Yours Eclectically, The Self-Appointed Master Librarian (OOK!) of the<br />
CPAN&lt;br/&gt;<br />
&lt;i&gt;Jarkko Hietaniemi&lt;/i&gt;<br />
&lt;a href=&#8221;mailto:cpan@<a href="http://perlcn.net">perl</a>.org&#8221;&gt;cpan@<a href="http://perlcn.net">perl</a>.org&lt;/a&gt;<br />
&lt;a href=&#8221;disclaimer.html&#8221;&gt;[Disclaimer]&lt;/a&gt;<br />
_fcksavedurl=&#8221;"disclaimer.html&#8221;&gt;[Disclaimer]&lt;/a&gt;&#8221;<br />
&lt;/small&gt;<br />
&lt;/p&gt;</p>
<p>&lt;/td&gt;</p>
<p>&lt;/tr&gt;</p>
<p>&lt;/table&gt;</p>
<p>&lt;hr/&gt;</p>
<p>&lt;table width=&#8221;100%&#8221;&gt;<br />
&lt;tr&gt;</p>
<p>&lt;td&gt;<br />
&lt;div class=&#8221;left&#8221;&gt;<br />
&lt;a<br />
href=&#8221;http://validator.w3.org/check?uri=http%3A%2F%2Fwww.cpan.org%2Findex.html&#8221;&gt;<br />
&lt;img src=&#8221;misc/gif/valid-xhtml10.gif&#8221; alt=&#8221;Valid XHTML<br />
1.0!&#8221; height=&#8221;31&#8243; width=&#8221;88&#8243;/&gt;&lt;/a&gt;<br />
&lt;a<br />
href=&#8221;http://jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Fwww.cpan.org%2Findex.html&#8221;&gt;<br />
&lt;img src=&#8221;misc/gif/vcss.gif&#8221; alt=&#8221;[Valid CSS]&#8221;<br />
height=&#8221;31&#8243; width=&#8221;88&#8243;/&gt;&lt;/a&gt;<br />
&lt;/div&gt;<br />
&lt;/td&gt;<br />
&lt;td&gt;<br />
&lt;div class=&#8221;right&#8221;&gt;</p>
<p>&lt;table width=&#8221;100%&#8221;&gt;</p>
<p>&lt;tr&gt;<br />
&lt;td class=&#8221;right&#8221;&gt;<br />
&lt;small&gt;<br />
CPAN master site hosted by<br />
&lt;/small&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
&lt;td class=&#8221;right&#8221;&gt;<br />
&lt;a href=&#8221;http://www.csc.fi/suomi/funet/verkko.html.en/&#8221;&gt;&lt;img<br />
src=&#8221;misc/gif/funet.gif&#8221; alt=&#8221;FUNET&#8221; height=&#8221;25&#8243;<br />
width=&#8221;88&#8243;/&gt;&lt;/a&gt;<br />
&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;</p>
<p>&lt;/div&gt;<br />
&lt;/td&gt;</p>
<p>&lt;/tr&gt;<br />
&lt;/table&gt;</p>
<p>&lt;/body&gt;<br />
&lt;/html&gt;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(18) Net::Telnet, open(), print(), getline()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Net::Telnet;</p>
<p>my $p = Net::Telnet-&gt;new();<br />
my $h = shift || &#8220;www.chinaunix.net&#8221;;</p>
<p>$p-&gt;open(Host =&gt; $h, Port =&gt; 80);<br />
$p-&gt;print(&#8220;GET /\n&#8221;);<br />
while(my $line = $p-&gt;getline())<br />
{<br />
print $line;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(19) Compress::Zlib, gzopen(), gzreadline(),gzclose()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Compress::Zlib;</p>
<p>my $gz = gzopen(&#8220;a.gz&#8221;, &#8220;rb&#8221;);</p>
<p>while( $gz-&gt;gzreadline(my $line) &gt; 0 )<br />
{<br />
chomp $line;<br />
print &#8220;$line\n&#8221;;<br />
}</p>
<p>$gz-&gt;gzclose();<br />
exit 0;</p>
<p>#直接使用shell的zmore,<br />
zless, zcat打开文件也不错，但是如果gz文件很大，还是应该选择zlib。</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(20) Net::POP3, login(), list(), get()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Net::POP3;<br />
use Data::Dumper;</p>
<p>my $user = &#8220;user&#8221;;<br />
my $pass = shift or die &#8220;Usage : $0 passwd\n&#8221;;<br />
my $host = &#8220;pop3.web.com&#8221;;#pop3 address</p>
<p>my $p = Net::POP3-&gt;new($host) or die &#8220;Can&#8217;t connect $host!\n&#8221;;<br />
$p-&gt;login($user, $pass) or die &#8220;user or passwd error!\n&#8221;;<br />
my $title = $p-&gt;list or die &#8220;No mail for $user\n&#8221;;</p>
<p>foreach my $h(keys %$title)<br />
{<br />
my $msg = $p-&gt;get($h);<br />
print @$msg;<br />
}<br />
$p-&gt;quit;<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">telnet pop3.web.com 110 也可以直接连到pop3 server上，然后通过pop3命令与邮件服务器交互，</p>
<p>简单的命令有：</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">USER name<br />
PASS string<br />
STAT<br />
LIST [n]<br />
RETR msg<br />
DELE msg<br />
NOOP<br />
RSET<br />
QUIT</p>
</blockquote>
<p>有兴趣的朋友可以试一试。<br />
这样，也就可以利用Net::Telnet来做一个收信件的简单程序。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-5" title="Perl常用模块使用例子(转载)5">Perl常用模块使用例子(转载)5</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-4" title="Perl常用模块使用例子(转载)4">Perl常用模块使用例子(转载)4</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-2" title="Perl常用模块使用例子(转载)2">Perl常用模块使用例子(转载)2</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-example-1" title="Perl常用模块使用例子(转载)1">Perl常用模块使用例子(转载)1</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perl-examples-3/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Perl常用模块使用例子(转载)2</title>
		<link>http://perlcn.net/perl-examples-2</link>
		<comments>http://perlcn.net/perl-examples-2#comments</comments>
		<pubDate>Thu, 28 Jan 2010 07:26:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[examples]]></category>

		<guid isPermaLink="false">http://perlcn.net/perl-resources-2</guid>
		<description><![CDATA[

(1)Net::FTP 

#!/usr/bin/perl -w
# file: ftp_recent.pl
# Figure 6.1: Downloading a single file with Net::FTP
use Net::FTP;
use constant HOST =&#62; &#8216;ftp.perl.org&#8217;;
use constant DIR =&#62; &#8216;/pub/CPAN&#8217;;
use constant FILE =&#62; &#8216;RECENT&#8217;;
my $ftp = Net::FTP-&#62;new(HOST) or die &#8220;Couldn&#8217;t connect: $@\n&#8221;;
$ftp-&#62;login(&#8216;anonymous&#8217;) or die $ftp-&#62;message;
$ftp-&#62;cwd(DIR) or die $ftp-&#62;message;
$ftp-&#62;get(FILE) or die $ftp-&#62;message;
$ftp-&#62;quit;
warn &#8220;File retrieved successfully.\n&#8221;;
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
(2)Net::Telnet

#!/usr/bin/perl -w
# file:remoteps.pl
use strict;
use Net::Telnet;
use constant HOST =&#62; &#8216;phage.cshl.org&#8217;;
use constant [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */ table.MsoNormalTable 	{mso-style-name:普通表格; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-font-kerning:1.0pt;}  --></p>
<p><!--[endif]--></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><span style="color: #0000ff;"><strong>(1)Net::FTP </strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
# file: ftp_recent.pl<br />
# Figure 6.1: Downloading a single file with Net::FTP<br />
use Net::FTP;<span id="more-171"></span></p>
<p>use constant HOST =&gt; &#8216;ftp.<a href="http://perlcn.net">perl</a>.org&#8217;;<br />
use constant DIR =&gt; &#8216;/pub/CPAN&#8217;;<br />
use constant FILE =&gt; &#8216;RECENT&#8217;;</p>
<p>my $ftp = Net::FTP-&gt;new(HOST) or die &#8220;Couldn&#8217;t connect: $@\n&#8221;;<br />
$ftp-&gt;login(&#8216;anonymous&#8217;) or die $ftp-&gt;message;<br />
$ftp-&gt;cwd(DIR) or die $ftp-&gt;message;<br />
$ftp-&gt;get(FILE) or die $ftp-&gt;message;<br />
$ftp-&gt;quit;</p>
<p>warn &#8220;File retrieved successfully.\n&#8221;;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(2)Net::Telnet</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
# file:remoteps.pl</p>
<p>use strict;<br />
use Net::Telnet;<br />
use constant HOST =&gt; &#8216;phage.cshl.org&#8217;;<br />
use constant USER =&gt; &#8216;lstein&#8217;;<br />
use constant PASS =&gt; &#8216;xyzzy&#8217;;</p>
<p>my $telnet=Net::Telnet-&gt;new(HOST);<br />
$telnet-&gt;login(USER,PASS);<br />
my @lines=$telnet-&gt;cmd(&#8216;ps -ef&#8217;);<br />
print @lines;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(3)LWP::Simple, get()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
use strict;<br />
use LWP::Simple qw(get);</p>
<p>my $url = shift || &#8220;http://www.chinaunix.net&#8221;;<br />
my $content = get($url);</p>
<p>print $content;</p>
<p>exit 0;<br />
#最简单方便的get网页的方法。</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(4) Expect</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Expect;</p>
<p>my $timeout = 2;<br />
my $delay = 1;<br />
my $cmd = &#8220;ssh&#8221;;<br />
my @params = qw/202.108.xx.xx -lusername -p22/;<br />
my $pass = &#8220;passwd&#8221;;</p>
<p>my $exp = Expect-&gt;spawn($cmd, @params) or die &#8220;Can&#8217;t spawn $cmd\n&#8221;;<br />
$exp-&gt;expect($timeout, -re=&gt;&#8217;[Pp]assword:&#8217;);<br />
$exp-&gt;send_slow($delay, &#8220;$pass\r\n&#8221;);</p>
<p>$exp-&gt;interact();<br />
$exp-&gt;hard_close();</p>
<p>exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(5) XML::Simple, XMLin()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
use strict;<br />
use XML::Simple;<br />
my $text = &lt;&lt;xml;<br />
&lt; ?xml version=&#8221;1.0&#8243;? &gt;<br />
&lt;web-app&gt;<br />
&lt;servlet&gt;<br />
&lt;servlet-name&gt;php&lt;/servlet-name&gt;<br />
&lt;servlet-class&gt;net.php.servlet&lt;/servlet-class&gt;<br />
&lt;/servlet&gt;<br />
&lt;servlet-mapping&gt;<br />
&lt;servlet-name&gt;php&lt;/servlet-name&gt;<br />
&lt;url-pattern&gt;*.php&lt;/url-pattern&gt;<br />
&lt;/servlet-mapping&gt;<br />
&lt;/web-app&gt;<br />
xml<br />
my $x = XMLin($text);<br />
foreach my $tag(keys %$x)<br />
{<br />
my %h = %{$$x{$tag}};<br />
foreach(keys %h)<br />
{<br />
print &#8220;$tag =&gt; &#8220;;<br />
print &#8220;$_ =&gt; $h{$_}\n&#8221;;<br />
}<br />
}<br />
exit 0;</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(6) Data::Dumper, Dumper()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
use strict;<br />
use Data::Dumper;</p>
<p>print Dumper(@INC);<br />
print Dumper(%ENV);<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>(7) IO::Socket</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
use strict;<br />
use IO::Socket;</p>
<p>my $host = &#8220;www.chinaunix.net&#8221;;<br />
my $port = &#8220;80&#8243;;<br />
my $http_head = &#8220;GET / HTTP/1.0\nHost: $host:$port\n\n&#8221;;<br />
my $sock = IO::Socket::INET-&gt;new(&#8220;$host:$port&#8221;)<br />
or die &#8220;Socket() error, Reason : $! \n&#8221;;</p>
<p>print $sock $http_head;<br />
print &lt;$sock&gt;;</p>
<p>exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<span style="color: #0000ff;"><strong>(8) Date::Manip, DateCalc(), UnixDate()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a><br />
use strict;<br />
use Date::Manip;<br />
my $date1 = &#8220;Fri Jun 6 18:31:42 GMT 2003&#8243;;<br />
my $date2 = &#8220;2003/05/06&#8243;;<br />
my $flag=&amp;Date_Cmp($date1,$date2);</p>
<p>if($flag&lt;0)<br />
{<br />
print &#8220;date1 is earlier!\n&#8221;;<br />
}<br />
elsif($flag==0)<br />
{<br />
print &#8220;the two dates are identical!\n&#8221;;<br />
}<br />
else<br />
{<br />
print &#8220;date2 is earlier!\n&#8221;;<br />
}<br />
exit 0;</p></blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<span style="color: #0000ff;"><strong>(10) File::Find, find()</strong></span></p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">#!/usr/bin/<a href="http://perlcn.net">perl</a> -w<br />
use strict;<br />
use File::Find;</p>
<p>my $file = &#8220;access.log&#8221;;<br />
my $path = &#8220;/&#8221;;</p>
<p>find(&amp;process, $path);</p>
<p>sub process{ print $File::Find::dir, &#8220;$_\n&#8221; if(/$file/); }</p>
<p>exit 0;</p>
<p>#用于在unix文件树结构中查找对象。</p></blockquote>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=f71f9394-7273-82fc-9a43-577c107d0523" alt="" /></p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-5" title="Perl常用模块使用例子(转载)5">Perl常用模块使用例子(转载)5</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-4" title="Perl常用模块使用例子(转载)4">Perl常用模块使用例子(转载)4</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-example-1" title="Perl常用模块使用例子(转载)1">Perl常用模块使用例子(转载)1</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perl-examples-2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl常用模块使用例子(转载)1</title>
		<link>http://perlcn.net/perl-example-1</link>
		<comments>http://perlcn.net/perl-example-1#comments</comments>
		<pubDate>Thu, 28 Jan 2010 07:13:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[example]]></category>

		<guid isPermaLink="false">http://perlcn.net/perl-example-1</guid>
		<description><![CDATA[

Linuxsir原文链接：http://www.linuxsir.org/bbs/thread77473.html
Chinaunix原文链接：Perl模块使用 =&#62; 简短例子代码集合！
一些常用模块的简单描述 http://perldoc.perl.org/perlmodlib.html
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
在perl 中使用模块：
模块的下载地址：http://www.cpan.org/modules/01modules.index.html
安装模块：

1. perl Makefile.PL
2. make
3. make test
4. make install

也可以用如下命令安装模块(已知的适用的系统redhat 9.0，其他的我不知道，请大家试试看   。

perl -MCPAN -e shell&#62;
接着输入：
install MODEL_NAME

查看模块的帮助：

perldoc MODEL_NAME
例如：
perldoc Net::FTP

&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
已有模块：(以下的内容转自CU，谢谢CU的朋友)
说明：
以下例子代码的测试是在FreeBSD &#38; Solaris下进行的，Perl版本为5.005_03。

(1) Net::FTP
(2) Net::Telnet
(3) LWP::Simple, get()
(4) Expect
(5) XML::Simple, XMLin()
(6) Data::Dumper, Dumper()
(7) IO::Socket
(8) Date::Manip, DateCalc(), UnixDate()
(9) Date::Manip, Date_Cmp()
(10) File::Find, find()
(11) ExtUtils::Installed, new(), modules(), version()
(12) DBI, connect(), prepare(), execute(), fetchrow_array()
(13) Getopt::Std
(14) Proc::ProcessTable
(15) Shell
(16) Time::HiRes, sleep(), [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:PunctuationKerning /> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>ZH-CN</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:SpaceForUL /> <w:BalanceSingleByteDoubleByteWidth /> <w:DoNotLeaveBackslashAlone /> <w:ULTrailSpace /> <w:DoNotExpandShiftReturn /> <w:AdjustLineHeightInTable /> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> <w:UseFELayout /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"  DefSemiHidden="true" DefQFormat="false" DefPriority="99"  LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"   UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--><!--  /* Font Definitions */ @font-face 	{font-family:宋体; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-alt:SimSun; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 135135232 16 0 262145 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face 	{font-family:"\@宋体"; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin:0cm; 	margin-bottom:.0001pt; 	text-align:justify; 	text-justify:inter-ideograph; 	mso-pagination:none; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:宋体; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi; 	mso-font-kerning:1.0pt;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} /* Page Definitions */ @page 	{mso-page-border-surround-header:no; 	mso-page-border-surround-footer:no;} @page Section1 	{size:612.0pt 792.0pt; 	margin:72.0pt 90.0pt 72.0pt 90.0pt; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --><!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */ table.MsoNormalTable 	{mso-style-name:普通表格; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.5pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-font-kerning:1.0pt;}  --></p>
<p><!--[endif]--></p>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">Linuxsir原文链接：<span style="font-family: 宋体;"><span lang="EN-US"><a href="http://www.linuxsir.org/bbs/thread77473.html" target="_blank"><span style="color: blue;">http://www.linuxsir.org/bbs/thread77473.html</span></a></span></span></p>
<p>Chinaunix原文链接：<span lang="EN-US"><a href="http://bbs2.chinaunix.net/viewthread.php?tid=85748&amp;extra=page%3D3%26amp%3Bfilter%3Ddigest&amp;page=1" target="_blank"><strong><span style="color: blue;">Perl</span></strong><strong><span style="color: blue;" lang="EN-US"><span lang="EN-US">模块使用 =&gt; </span></span></strong><strong><span style="color: blue;" lang="EN-US"><span lang="EN-US">简短例子代码集合！</span></span></strong></a></span></p>
<p>一些常用模块的简单描述 <span lang="EN-US"><a href="http://<a href="http://perlcn.net">perl</a>doc.<a href="http://perlcn.net">perl</a>.org/<a href="http://perlcn.net">perl</a>modlib.html" target="_blank"><span style="color: blue;">http://<a href="http://perlcn.net">perl</a>doc.<a href="http://perlcn.net">perl</a>.org/<a href="http://perlcn.net">perl</a>modlib.html</span></a></span><a href="http://<a href="http://perlcn.net">perl</a>doc.<a href="http://perlcn.net">perl</a>.org/<a href="http://perlcn.net">perl</a>modlib.html" target="_blank"><span id="more-169"></span></a></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
<span style="color: #0000ff;"><strong>在<a href="http://perlcn.net">perl</a> 中使用模块：</strong></span><br />
模块的下载地址：<span lang="EN-US"><a href="http://www.cpan.org/modules/01modules.index.html" target="_blank"><span style="color: blue;">http://www.cpan.org/modules/01modules.index.html</span></a><br />
</span>安装模块：</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">1. <a href="http://perlcn.net">perl</a> Makefile.PL<br />
2. make<br />
3. make test<br />
4. make install</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">也可以用如下命令安装模块(已知的适用的系统redhat 9.0，其他的我不知道，请大家试试看 <img src='http://<a href="http://perlcn.net">perl</a>cn.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;"><a href="http://perlcn.net">perl</a> -MCPAN -e shell&gt;<br />
接着输入：<br />
install MODEL_NAME</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">查看模块的帮助：</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;"><a href="http://perlcn.net">perl</a>doc MODEL_NAME<br />
例如：<br />
<a href="http://perlcn.net">perl</a>doc Net::FTP</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>已有模块：(以下的内容转自CU，谢谢CU的朋友)<br />
<span style="color: #0000ff;"><strong>说明：</strong></span><br />
以下例子代码的测试是在FreeBSD &amp; Solaris下进行的，Perl版本为5.005_03。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">(1) Net::FTP<br />
(2) Net::Telnet<br />
(3) LWP::Simple, get()<br />
(4) Expect<br />
(5) XML::Simple, XMLin()<br />
(6) Data::Dumper, Dumper()<br />
(7) IO::Socket<br />
(8) Date::Manip, DateCalc(), UnixDate()<br />
(9) Date::Manip, Date_Cmp()<br />
(10) File::Find, find()<br />
(11) ExtUtils::Installed, new(), modules(), version()<br />
(12) DBI, connect(), prepare(), execute(), fetchrow_array()<br />
(13) Getopt::Std<br />
(14) Proc::ProcessTable<br />
(15) Shell<br />
(16) Time::HiRes, sleep(), time()<br />
(17) HTML::LinkExtor, links(), parse_file()<br />
(18) Net::Telnet, open(), print(), getline()<br />
(19) Compress::Zlib, gzopen(), gzreadline(), gzclose()<br />
(20) Net::POP3, login(), list(), get()<br />
(21) Term::ANSIColor<br />
(22) Date::Calc Calendar(), Today()<br />
(23) Term::Cap, Tgetend(), Tgoto, Tputs()<br />
(24) HTTPD::Log::Filter<br />
(25) Net::LDAP<br />
(26) Net::SMTP mail(), to(), data(), datasend(), auth()<br />
(27) MIME::Base64, encode_base64(), decode_base64()<br />
(28) Net::IMAP::Simple, login(), mailboxes(), select(), get()&#8230;<br />
(29) Bio::DB::GenBank, Bio::SeqIO<br />
(30) Spreadsheet::ParseExcel<br />
(31) Text::CSV_XS, parse(), fields(), error_input()<br />
(32) Benchmark</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;"><strong><span style="color: #0000ff;">说明：</span></strong><br />
以下例子代码的测试是在RH Linux7.2下进行的，Perl版本为5.6.0。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">(33) HTTP:: Daemon, accept(), get_request()&#8230;<br />
(34) Array::Compare, compare(), full_compare()&#8230;<br />
(35) Algorithm::Diff, diff()<br />
(36) List::Util, max(), min(), sum(), maxstr(), minstr()&#8230;<br />
(37) HTML::Parser<br />
(38) Mail::Sender<br />
(39) Time::HiRes, gettimeofday(), usleep()<br />
(40) Image::Magick</p>
</blockquote>
<p class="MsoNormal" style="margin-bottom: 12pt; text-align: left;">以下模块在RedHat 9.0 ,<a href="http://perlcn.net">perl</a> version v5.8.0 built 通过。</p>
<blockquote>
<p class="MsoNormal" style="text-align: left;">(41) Data::SearchReplace</p>
</blockquote>
<p class="MsoNormal">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=1b31d9e5-fc9b-8cb1-a26c-3850ccf707b0" alt="" /></div>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-5" title="Perl常用模块使用例子(转载)5">Perl常用模块使用例子(转载)5</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-4" title="Perl常用模块使用例子(转载)4">Perl常用模块使用例子(转载)4</a> (0)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-2" title="Perl常用模块使用例子(转载)2">Perl常用模块使用例子(转载)2</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perl-example-1/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MSNShell导致MSN崩溃的解决办法</title>
		<link>http://perlcn.net/msnshell-lead-to-the-collapse-of-the-solution-msn</link>
		<comments>http://perlcn.net/msnshell-lead-to-the-collapse-of-the-solution-msn#comments</comments>
		<pubDate>Wed, 27 Jan 2010 05:08:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[msn]]></category>

		<guid isPermaLink="false">http://perlcn.net/msnshell-cause-msn-crash</guid>
		<description><![CDATA[MSNShell自动更新到新版本（ 4.3以后版本后 ），使用MSN 7.5（主要为Windows 2000用户）的时候，发送消息的时候，会提示MSN遇到问题要关闭，之后MSN自动关闭的问题。
解决办法是卸载“新版本”的MSNShell，并安装4.2.28.32版本的MSNShell（直接覆盖安装亦可）
MSNShell的官方网站上只提供了最新版本的MSNShell，老版本的可以从这里下载
MSNShell 4.2.28.32下载地址
为了避免MSNShell自动更新到最新版本，导致问题，可以通过打开MSNShell的“设置”对话框，之后去掉“自动更新”选项。


热评日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)2010年01月25日 -- Perl学习资料打包(搜集整理By mwm5)  (1)2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)2010年01月28日 -- Perl常用模块使用例子(转载)3 (1)2010年01月27日 -- 留言 (1)]]></description>
			<content:encoded><![CDATA[<p>MSNShell自动更新到新版本（<span class="h_ver"> 4.3以后版本后 </span>），使用MSN 7.5（主要为Windows 2000用户）的时候，发送消息的时候，会提示MSN遇到问题要关闭，之后MSN自动关闭的问题。</p>
<p>解决办法是卸载“新版本”的MSNShell，并安装<span class="h_ver">4.2.28.32版本的</span>MSNShell<span class="h_ver">（直接覆盖安装亦可）</span></p>
<p>MSNShell的官方网站上只提供了最新版本的MSNShell，老版本的可以从这里下载</p>
<p><a href="http://www.dbank.com/download.action?t=40&amp;k=MTIyNTUyMTQ=&amp;pcode=LCwxNTIwMDYsMTUyMDA2&amp;rnd=6918" target="_blank">MSNShell 4.2.28.32下载地址</a></p>
<p>为了避免MSNShell自动更新到最新版本，导致问题，可以通过打开MSNShell的“设置”对话框，之后去掉“自动更新”选项。</p>
<p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" alt="" src="http://img.zemanta.com/pixy.gif?x-id=19745cfc-6160-8861-8002-862b5a67bc29" /></div>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/msnshell-lead-to-the-collapse-of-the-solution-msn/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firebug 1.5导致Firefox崩溃的解决办法</title>
		<link>http://perlcn.net/firebug-1-5-led-to-the-collapse-of-the-solution-firefox</link>
		<comments>http://perlcn.net/firebug-1-5-led-to-the-collapse-of-the-solution-firefox#comments</comments>
		<pubDate>Wed, 27 Jan 2010 04:45:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://perlcn.net/firebug-firefox</guid>
		<description><![CDATA[Firefox 3.5.7或低版本中firebug 更新到1.5之后，打开Firefox之后，Firefox会自动关闭
解决的办法是将Firefox更新到3.6版本，点击 帮助-检查更新，进行升级，或从官方下载安装http://www.mozillaonline.com/
但是Firefox3.6出来时间还比较短，将Firefox更新到3.6版本之后，在3.5.7下可以使用的一些插件会无法正常使用，比如迅雷下载插件等
所以如果使用情况正常，建议暂时不要将firebug 更新到最新版本，并使用3.5.7版本的firefox
注：如果已经不小心将firebug更新到1.5版本，导致firefox不断自动关闭，可以将firefox更新到3.6版本，之后再覆盖安装firefox 3.5.7版本。这样firebug 1.5可以正常使用，firefox 3.5.7上之前可以用的插件也都可以正常使用，呵呵。此法在Windows xp sp3上测试成功！
firefox 3.5.7下载地址：http://www.mozilla.com/en-US/firefox/all-older.html


相关日志2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)]]></description>
			<content:encoded><![CDATA[<p>Firefox 3.5.7或低版本中firebug 更新到1.5之后，打开Firefox之后，Firefox会自动关闭</p>
<p>解决的办法是将Firefox更新到3.6版本，<br />点击 帮助-检查更新，进行升级，或从官方下载安装<a target="_blank" href="http://www.mozillaonline.com/">http://www.mozillaonline.com/</a></p>
<p>但是Firefox3.6出来时间还比较短，将Firefox更新到3.6版本之后，在3.5.7下可以使用的一些插件会无法正常使用，比如迅雷下载插件等</p>
<p>所以如果使用情况正常，建议暂时不要将firebug 更新到最新版本，并使用3.5.7版本的firefox</p>
<p><b>注：</b>如果已经不小心将firebug更新到1.5版本，导致firefox不断自动关闭，可以将firefox更新到3.6版本，之后再覆盖安装firefox 3.5.7版本。这样firebug 1.5可以正常使用，firefox 3.5.7上之前可以用的插件也都可以正常使用，呵呵。此法在Windows xp sp3上测试成功！</p>
<p>firefox 3.5.7下载地址：<a target="_blank" href="http://download.mozilla.org/?product=firefox-3.5.7&amp;os=win&amp;lang=zh-CN">http://www.mozilla.com/en-US/firefox/all-older.html</a></p>
<p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" alt="" src="http://img.zemanta.com/pixy.gif?x-id=e4b76615-a5db-805b-a113-831af8ec5188" /></div>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/firebug-1-5-led-to-the-collapse-of-the-solution-firefox/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>谷歌译者工具包-Google Translator Toolkit</title>
		<link>http://perlcn.net/google-translator-tool-kit-google-translator-toolkit</link>
		<comments>http://perlcn.net/google-translator-tool-kit-google-translator-toolkit#comments</comments>
		<pubDate>Tue, 26 Jan 2010 09:11:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[translation]]></category>

		<guid isPermaLink="false">http://perlcn.net/?p=112</guid>
		<description><![CDATA[用了一下，感觉很不错，争取尽快把perl方面的术语对照表整理出来。
谷歌黑板报上的消息：谷歌译者工具包新增对 285 种语言的支持
近日，我们为谷歌译者工具包进行了大规模的升级，一口气新增了包括大量小语种在内的 285 种语言，从而使支持的语言总数达到了 345 种。现在，谷歌译者工具包的用户可以随心所欲地在 10664 个语言对之间进行互译。同时，我们还把界面语言推广到 35 种，从而使更多的用户可以在自己母语界面上使用译者工具包。

视频介绍




相关日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)]]></description>
			<content:encoded><![CDATA[<p>用了一下，感觉很不错，争取尽快把<a href="http://perlcn.net">perl</a>方面的术语对照表整理出来。</p>
<p>谷歌黑板报上的消息：<br /><a href="http://googlechinablog.com/2009/10/285.html">谷歌译者工具包新增对 285 种语言的支持</a><br />
<blockquote>近日，我们为谷歌译者工具包进行了大规模的升级，一口气新增了包括大量小语种在内的 285 种语言，从而使支持的语言总数达到了 345 种。现在，谷歌译者工具包的用户可以随心所欲地在 10664 个语言对之间进行互译。同时，我们还把界面语言推广到 35 种，从而使更多的用户可以在自己母语界面上使用译者工具包。</p></blockquote>
<p><!-- more --></p>
<p>视频介绍</p>
<p><a href="http://player.youku.com/player.php/sid/XOTczMjY1MDQ=/v.swf"></a>
<div class="youtube-video"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" height="513" width="513"><param name="src" value="http://player.youku.com/player.php/sid/XOTczMjY1MDQ=/v.swf"></param><embed type="application/x-shockwave-flash" src="http://player.youku.com/player.php/sid/XOTczMjY1MDQ=/v.swf" height="513" width="513"></embed></object></div>
<p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=54d6448d-b263-8658-a326-03020728555c" alt="" /></div>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/google-translator-tool-kit-google-translator-toolkit/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[译]Windows Server 2008 Hyper-V的热点问题（Q3）</title>
		<link>http://perlcn.net/top-issues-for-windows-server-2008-hyper-v-q3</link>
		<comments>http://perlcn.net/top-issues-for-windows-server-2008-hyper-v-q3#comments</comments>
		<pubDate>Mon, 25 Jan 2010 09:16:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[hyper-v]]></category>
		<category><![CDATA[solutions]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=86</guid>
		<description><![CDATA[
 文章用Word编辑的，直接粘贴到博客编辑器中提示超过字符数限制，发不出来，所以下面发布一个纯文本的版本（链接和排版的样式都没有了），Word版本及英文原文见附件！ 推荐下载Word版本或者英文原版进行查看。

上一季我们的支持工程师发布了针对Hyper-V一系列问题，现在是对这些内容进行逐一的更新的时候了。这些问题被分门别类地列入重点关注问题的范畴，并 列出了可能的解决方案和必要的注释。我想你们会注意到第三季的问题，相对于第一季和第二季没有太大变化。但愿越来越多的人看到我们所做的更新，但愿这些问 题的发生越来越少并最终全部消失。对于第四季的结果，可能将有一个新的博客。另外我想说，我们强烈建议在所有运行了Hyper-V角色的服务器上安装 Windows Server 2008 SP2。
部署、规划
 
问题1：用户寻找Hyper-V的文档
解决方法：Hyper-V TechNet Library提供了这方面的信息，它包含了到达几个产品小组博客的链接。另外Microsoft Virtualization网站包含了快速获取现实可行的基于Hyper-V解决方案的信息。
安装问题
 
问题1：用户遇到了关于预览版Hyper-V的问题
解决方法：更新为hyper-v的发行版本(KB950050)
问题2：在Windows Update的最新更新都安装完毕或者KB950050安装之后，虚拟机启动失败，并出现以下错误提示信息：

An error occurred while attempting to change the state of the virtual machine vmname .
‘ vmname ’ failed to initialize.
Failed to read or update VM configuration. 

或者

An error occurred while attempting to change the state of virtual machine vmname .
&#8221; VMName &#8221; [...]]]></description>
			<content:encoded><![CDATA[<div style="font-size: 10pt; position: relative; word-wrap: break-word;">
<div><strong><span style="color: #ff0000;"> <span style="color: #000000;">文章用Word编辑的，直接粘贴到博客编辑器中提示超过字符数限制，发不出来，所以下面发布一个纯文本的版本（链接和排版的样式都没有了），Word版本及英文原文见附件！ 推荐下载<a href="http://img1.51cto.com/attachment/200908/612689_1249237598.doc" target="_blank">Word版本</a>或者<a href="http://img1.51cto.com/attachment/200908/612689_1249237604.doc" target="_blank">英文原版</a>进行查看。</span></span></strong></div>
<p><span id="more-86"></span></p>
<div><span style="color: #000000;">上一季我们的支持工程师发布了针对Hyper-V一系列问题，现在是对这些内容进行逐一的更新的时候了。这些问题被分门别类地列入重点关注问题的范畴，并 列出了可能的解决方案和必要的注释。我想你们会注意到第三季的问题，相对于第一季和第二季没有太大变化。但愿越来越多的人看到我们所做的更新，但愿这些问 题的发生越来越少并最终全部消失。对于第四季的结果，可能将有一个新的博客。另外我想说，我们强烈建议在所有运行了Hyper-V角色的服务器上安装 Windows Server 2008 SP2。</span></div>
<div><strong><span style="color: #000000;">部署、规划</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>用户寻找Hyper-V的文档</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>Hyper-V TechNet Library提供了这方面的信息，它包含了到达几个产品小组博客的链接。另外Microsoft Virtualization网站包含了快速获取现实可行的基于Hyper-V解决方案的信息。</span></div>
<div><strong><span style="color: #000000;">安装问题</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>用户遇到了关于预览版Hyper-V的问题</span></div>
<div><span style="color: #000000;">解决方法：更新为hyper-v的发行版本(KB950050)</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>在Windows Update的最新更新都安装完毕或者KB950050安装之后，虚拟机启动失败，并出现以下错误提示信息：</span></div>
<blockquote>
<div><span style="color: #000000;">An error occurred while attempting to change the state of the virtual machine vmname .<br />
‘ vmname ’ failed to initialize.<br />
Failed to read or update VM configuration. </span></div>
</blockquote>
<div><span style="color: #000000;">或者</span></div>
<blockquote>
<div><span style="color: #000000;">An error occurred while attempting to change the state of virtual machine vmname .<br />
&#8221; VMName &#8221; failed to initialize<br />
An attempt to read or update the virtual machine configuration failed.<br />
&#8221; VMName &#8221; failed to read or update the virtual machine configuration: Unspecified error (0&#215;80040005). </span></div>
</blockquote>
<div><span style="color: #000000;"><strong>原因：</strong>这个问题是因为在测试版本的Hyper-V中创建的虚拟机配置与后面版本的Hyper-V不兼容</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB949222所述的步骤进行操作。</span></div>
<div><span style="color: #000000;">问题3：安装完Hyper-V角色之后，一个用户创建了一个虚拟机，但是启动失败，提示如下错误信息：</span></div>
<blockquote>
<div><span style="color: #000000;">The virtual machine could not be started because the hypervisor is not running </span></div>
</blockquote>
<div><span style="color: #000000;">（因为Hypervisor没有运行，虚拟机无法启动）</span></div>
<div><span style="color: #000000;">原因：硬件虚拟化或者DEP（数据执行保护）在BIOS中禁用</span></div>
<div><span style="color: #000000;">解决方法：在BIOS中启用硬件虚拟化和DEP（数据执行保护）。有的时候，服务器可能需要关闭电源后再打开电源，才能让新的BIOS设置生效。（重新启动计算机可能不会将更改应用于设置）</span></div>
<div><strong><span style="color: #000000;">虚拟设备、驱动程序</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>在设备管理器中，虚拟网卡被显示为“未知设备”</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>需要安装集成组件（包含在集成服务安装盘中）</span></div>
<div><span style="color: #000000;">解决方法：在虚拟机中安装集成组件包（用Hyper-V管理控制台连接虚拟机后点击操作-插入集成服务安装盘）</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>在Microsoft Hyper-V服务器2008或者安装了Hyper-V角色的Server 2008 中遇到停止错误0&#215;00000050</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>如果Hyper-V虚拟机配置了一个没有连接任何磁盘的SCSI控制器可能导致该问题</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB969266所述的步骤操作。</span></div>
<div><span style="color: #000000;"><strong>问题3：</strong>在Microsoft Hyper-V服务器2008或者安装了Hyper-V角色的Server 2008 中遇到停止错误0&#215;0000001A</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>Vid.sys</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>安装KB957967补丁解决这个问题</span></div>
<div><strong><span style="color: #000000;">快照</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>快照合并失败，错误代码0&#215;80070070</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>磁盘空间不足。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>清理磁盘空间，以便完成合并。</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>快照被删除</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>最常见的原因是用户回收空间的时候，删除了.avhd文件（不知道.avhd文件是快照文件）</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>从备份中恢复数据。</span></div>
<div><span style="color: #000000;">关于快照的更多信息，请参照快照的FAQ：</span></div>
<div><a href="http://technet.microsoft.com/en-us/library/dd560637.aspx"><span style="color: #000000;">http://technet.microsoft.com/en-us/library/dd560637.aspx</span></a><span style="color: #000000;">. </span></div>
<div><span style="color: #000000;"><strong>问题3：</strong>快照丢失</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>源VHD文件进行了“扩展”操作（不支持）。如果快照和虚拟硬盘相关联，源VHD文件不能进行“扩展”。这点在“编辑磁盘”的向导中有说明。</span></div>
<div><span style="color: #000000;"><img class="alignnone" style="border: 0pt none;" onclick="window.open(&quot;http://blog.51cto.com/viewpic.php?refimg=&quot; + this.src)" src="http://blogs.technet.com/blogfiles/askcore/WindowsLiveWriter/TopIssuesforMicrosoftSupportforWindowsSe_8B69/clip_image002_2.jpg" border="0" alt="" width="499" height="156" /></span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>从备份中恢复数据。</span></div>
<div><strong><span style="color: #000000;">集成组件</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>Windows 2000（SP4）虚拟机安装了集成组件之后，可能关机很慢。</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>这个问题是由于Windows Software Trace Pre-Processor (WPP)跟踪宏（Hyper-V之外）的漏洞导致的。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>KB959781说明了Server 2008中这个问题的解决方案。</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>试图在Server 2003虚拟机上安装集成组件的时候失败，收到以下错误信息：</span></div>
<blockquote>
<div><span style="color: #000000;">Unsupported Guest OS </span></div>
<div><span style="color: #000000;">An error has occurred:  The specified program requires a newer version of Windows. </span></div>
</blockquote>
<div><span style="color: #000000;"><strong>原因：</strong>虚拟机没有安装Server 2003 SP2。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>在安装集成组件之前，在Server 2003虚拟机中安装SP2。</span></div>
<div><strong><span style="color: #000000;">虚拟机状态和设置</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>在安装了Hyper-V角色的Windows Server 2008系统或者微软Hyper-V Server 2008中，你可能遇到以下的问题：</span></div>
<div><span style="color: #000000;">当你试图创建或者启动一个虚拟机的时候，收到了如下的错误提示：</span></div>
<blockquote>
<div><span style="color: #000000;">· The requested operation cannot be performed on a file with a user-mapped section open. ( 0&#215;800704C8 ) </span></div>
</blockquote>
<div><span style="color: #000000;">(请求的操作不能执行，因为文件被用户打开，错误代码0&#215;800704C8)</span></div>
<blockquote>
<div><span style="color: #000000;">· ‘VMName’ Microsoft Synthetic Ethernet Port (Instance ID </span></div>
<div><span style="color: #000000;">{7E0DA81A-A7B4-4DFD-869F-37002C36D816}): Failed to Power On with Error &#8216;The specified network resource or device is no longer available.&#8217; (0&#215;80070037). </span></div>
<div><span style="color: #000000;">· The I/O operation has been aborted because of either a thread exit or an application request. (0&#215;800703E3) </span></div>
</blockquote>
<div><span style="color: #000000;">虚拟机从Hyper-V管理控制台消失</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>这个问题是由于安装在源分区的杀毒软件的实时扫描组件被配置为监控Hyper-V虚拟机文件引起的。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB961804所述步骤操作。</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>创建或启动虚拟机失败，收到如下错误提示：</span></div>
<blockquote>
<div><span style="color: #000000;">&#8216;General access denied error&#8217; (0&#215;80070005). </span></div>
</blockquote>
<div><span style="color: #000000;"><strong>原因：</strong>这个问题是由于英特尔IPMI驱动引起的。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB969556所述步骤操作。</span></div>
<div><span style="color: #000000;"><strong>问题3：</strong>虚拟机状态为&#8221;Paused-Critical&#8221;</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>在存放.vhd或者avhd文件的卷上缺少可用的磁盘空间。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>在存放.vhd或者.avhd文件的卷上清理磁盘空间。</span></div>
<div><strong><span style="color: #000000;">高可用性（故障转移群集）</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>如何在故障转移群集上配置Hyper-V。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>关于如何在故障转移群集上配置Hyper-V 的《循序渐进指南》现在已经发布。</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>故障转移群集的一个节点虚拟机设置变更，这些变更当虚拟机被迁移到群集的另一个节点的时候没有生效。</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>在尝试故障转移之前，“更新虚拟机配置”的选项没有勾选。</span></div>
<div><span style="color: #000000;">解决方法：当故障转移群集的一个虚拟机的设置变更的时候，在虚拟机被迁移到另一个节点之前，你必须选择“更新虚拟机配置”的选项。有一个专门讨论这个问题的博客。</span></div>
<div><strong><span style="color: #000000;">备份（Hyper-V VSS Writer）</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>当你备份一个Hyper-V虚拟机的时候，你可能遇到以下的症状。</span></div>
<div><span style="color: #000000;">如果你备份一个包含多个卷的Hyper-V虚拟机，备份可能失败。备份失败之后，你查看VMMS事件日志，可以看到如下的事件记录：</span></div>
<blockquote>
<div><span style="color: #000000;">Log Name: Microsoft-Windows-Hyper-V-VMMS-Admin </span></div>
<div><span style="color: #000000;">Source: Microsoft-Windows-Hyper-V-VMMS </span></div>
<div><span style="color: #000000;">Event ID: 10104 </span></div>
<div><span style="color: #000000;">Level: Error </span></div>
<div><span style="color: #000000;">Description: </span></div>
<div><span style="color: #000000;">Failed to revert to VSS snapshot on one or more virtual hard disks of the virtual machine &#8216;%1&#8242;. (Virtual machine ID %2) </span></div>
</blockquote>
<div><span style="color: #000000;">如果Hyper-V虚拟机备份失败，Microsoft Hyper-V VSS Writer转入一种不稳定状态。你运行Vssadmin list Writers命令时，将看不到Microsoft Hyper-V VSS Writer。必须重启Hyper-V虚拟机管理服务，以便让Microsoft Hyper-V VSS Writer切换到稳定状态。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>处理Hyper-V虚拟机备份还原问题的(KB959962)更新现在已经发布。</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>如果利用Windows Server Backup来备份虚拟机</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB958662所述步骤操作。</span></div>
<div><strong><span style="color: #000000;">虚拟网络管理器</span></strong></div>
<div><strong> </strong></div>
<div><strong><span style="color: #000000;">问题1：</span></strong></div>
<div><span style="color: #000000;">虚拟机无法访问外部网络</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>虚拟机配置使用了错误的物理网卡</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>使用正确的物理网卡配置外部网络</span></div>
<div><span style="color: #000000;"><strong>问题2：</strong>网络连通性问题</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>网卡群组软件（NIC teaming software）</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>删除网卡群组软件。微软对于Hyper-V网卡群组的支持策略在KB968703中进行了说明。</span></div>
<div><span style="color: #000000;"><strong>问题3：</strong>用户咨询Hyper-V是否支持网卡群组</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>微软对于Hyper-V网卡群组的支持策略在KB968703中进行了说明。</span></div>
<div><strong><span style="color: #000000;">Hyper-V管理控制台</span></strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>如何远程管理Hyper-V</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>TechNet 的一篇文章阐述了，配置Hyper-V远程管理的操作步骤。John Howard对于远程管理也有一个非常深入的博客。</span></div>
<div><strong><span style="color: #000000;">导入、导出</span></strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>导入虚拟机的时候失败，提示如下错误信息：</span></div>
<blockquote>
<div><span style="color: #000000;">A Server error occurred while attempting to import the virtual machine. Failed to import the virtual machine from import directory &lt;Directory Path&gt;. Error: One or more arguments are invalid (0&#215;80070057). </span></div>
</blockquote>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB968968所述步骤进行操作。</span></div>
<div><strong><span style="color: #000000;">其他</span></strong></div>
<div><strong> </strong></div>
<div><span style="color: #000000;"><strong>问题1：</strong>在Windows Server 2003虚拟机上你可能遇到如下的问题：</span></div>
<blockquote>
<div><span style="color: #000000;">·An Event ID 1054 is logged to the Application Event log: </span></div>
<div><span style="color: #000000;">Event ID: 1054<br />
Source: Userenv<br />
Type: Error<br />
Description:<br />
Windows cannot obtain the domain controller name for your computer network. (The specified domain either does not exist or could not be contacted). Group Policy processing aborted. </span></div>
</blockquote>
<div><span style="color: #000000;">· 当使用Ping命令的时候显示一个负的ping时间</span></div>
<div><span style="color: #000000;">· 性能监视器显示了一个很高的磁盘队列长度</span></div>
<div><span style="color: #000000;"><strong>原因：</strong>当不同的处理器核心的计时器time-stamp counters (TSC)不同步的时候会发生这样的问题。</span></div>
<div><span style="color: #000000;"><strong>解决方法：</strong>按照KB938448所述的步骤进行操作。</span></div>
<div><span style="color: #000000;">和以往一样，我们希望这对你有所帮助。</span></div>
<div><em><span style="color: #000000;">Chuck Timon<br />
Senior Support Escalation Engineer<br />
Microsoft Enterprise Platforms Support </span></em></div>
<div><span style="color: #000000;"><em>Posted: Wednesday, May 27, 2009 3:24 PM by jeffhugh</em> </span></div>
<div><span style="color: #000000;"><strong>译者说明：</strong>翻译本文仅为了大家使用，为该文档提供一个中文版 本。原文中的链接都予以保留，以便读者使用。另外对于一切提示信息的翻译，为避免翻译成中文与中文系统的提示不一致，误导读者，保留英文内容，并在英文内 容后，用括弧标明个人的翻译或说明。个人水平有限，翻译中难免有不当的地方，欢迎指正交流。对自己英文比较有信心的朋友，还是推荐直接查看官方原版内容：</span></div>
<div><a href="http://blogs.technet.com/askcore/archive/2009/05/27/top-issues-for-microsoft-support-for-windows-server-2008-hyper-v-q3.aspx" target="_blank">Top Issues for Microsoft Support for Windows Server 2008 Hyper-V (Q3)<br />
</a></div>
</div>
<div><strong>附件下载：</strong><br />
<a href="http://nkmis02.blog.51cto.com/attachment/200908/612689_1249237598.doc" target="_blank"><img src="http://nkmis02.blog.51cto.com/images/plusfile.gif" border="0" alt="" />本文的Word版本</a><br />
<a href="http://nkmis02.blog.51cto.com/attachment/200908/612689_1249237604.doc" target="_blank"><img src="http://nkmis02.blog.51cto.com/images/plusfile.gif" border="0" alt="" />英文原文</a></div>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/baidu-hacked-solutions" title="百度&#8221;被黑&#8221;后的临时解决办法">百度&#8221;被黑&#8221;后的临时解决办法</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/fastcopy-to-delete-special-files-and-folders" title="借助Fastcopy删除特殊名称的顽固文件和文件夹 ">借助Fastcopy删除特殊名称的顽固文件和文件夹 </a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/top-issues-for-windows-server-2008-hyper-v-q3/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perl文档(perldoc)翻译计划</title>
		<link>http://perlcn.net/perldoc-translation-plan</link>
		<comments>http://perlcn.net/perldoc-translation-plan#comments</comments>
		<pubDate>Mon, 25 Jan 2010 09:05:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[plan]]></category>
		<category><![CDATA[translation]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=81</guid>
		<description><![CDATA[此贴作为日志内容的索引和更新计划，相应内容会陆续更新，敬请关注~欢迎指教~

perldoc翻译计划
 (*标记的是近期计划内容，#标记的是已经看到有中译版的文档)



 Tutorials
#perlreftut          Perl references short introduction
*perldsc             Perl data structures intro
#perllol             Perl data structures: arrays of arrays
perlrequick         Perl regular expressions quick start
perlretut           Perl regular expressions tutorial
*perlboot            Perl OO tutorial for beginners
*perltoot            Perl OO tutorial, part 1
*perltooc            Perl OO tutorial, part 2
perlbot             Perl OO tricks and examples
perlperf            Perl Performance and Optimization Techniques
perlstyle           Perl style guide
#perlcheat           Perl [...]]]></description>
			<content:encoded><![CDATA[<p>此贴作为日志内容的索引和更新计划，相应内容会陆续更新，敬请关注~欢迎指教~<br />
<span style="color: #0000ff; font-weight: bold;"><br />
<span style="color: #000000;"><a href="http://perlcn.net">perl</a>doc翻译计划<br />
</span> </span><span style="color: #000000;">(*标记的是近期计划内容，#标记的是已经看到有中译版的文档)</span><br />
<span id="more-81"></span><br />
<span style="color: #0000ff;"><br />
</span><br />
<span style="font-weight: bold;"> Tutorials</span><br />
#<a href="http://perlcn.net">perl</a>reftut          Perl references short introduction<br />
*<a href="http://perlcn.net">perl</a>dsc             Perl data structures intro<br />
#<a href="http://perlcn.net">perl</a>lol             Perl data structures: arrays of arrays<br />
<a href="http://perlcn.net">perl</a>requick         Perl regular expressions quick start<br />
<a href="http://perlcn.net">perl</a>retut           Perl regular expressions tutorial<br />
*<a href="http://perlcn.net">perl</a>boot            Perl OO tutorial for beginners<br />
*<a href="http://perlcn.net">perl</a>toot            Perl OO tutorial, part 1<br />
*<a href="http://perlcn.net">perl</a>tooc            Perl OO tutorial, part 2<br />
<a href="http://perlcn.net">perl</a>bot             Perl OO tricks and examples<br />
<a href="http://perlcn.net">perl</a>perf            Perl Performance and Optimization Techniques<br />
<a href="http://perlcn.net">perl</a>style           Perl style guide<br />
#<a href="http://perlcn.net">perl</a>cheat           Perl cheat sheet<br />
<a href="http://perlcn.net">perl</a>trap            Perl traps for the unwary<br />
<a href="http://perlcn.net">perl</a>debtut          Perl debugging tutorial</p>
<p><a href="http://perlcn.net">perl</a>faq             Perl frequently asked questions<br />
<a href="http://perlcn.net">perl</a>faq1          General Questions About Perl<br />
<a href="http://perlcn.net">perl</a>faq2          Obtaining and Learning about Perl<br />
<a href="http://perlcn.net">perl</a>faq3          Programming Tools<br />
<a href="http://perlcn.net">perl</a>faq4          Data Manipulation<br />
<a href="http://perlcn.net">perl</a>faq5          Files and Formats<br />
<a href="http://perlcn.net">perl</a>faq6          Regexes<br />
<a href="http://perlcn.net">perl</a>faq7          Perl Language Issues<br />
<a href="http://perlcn.net">perl</a>faq8          System Interaction<br />
<a href="http://perlcn.net">perl</a>faq9          Networking</p>
<p><span style="font-weight: bold;"> Reference Manual</span><br />
<a href="http://perlcn.net">perl</a>syn             Perl syntax<br />
*<a href="http://perlcn.net">perl</a>data            Perl data structures<br />
<a href="http://perlcn.net">perl</a>op              Perl operators and precedence<br />
*<a href="http://perlcn.net">perl</a>sub             Perl subroutines<br />
<a href="http://perlcn.net">perl</a>func            Perl built-in functions<br />
#<a href="http://perlcn.net">perl</a>opentut       Perl open() tutorial<br />
<a href="http://perlcn.net">perl</a>packtut       Perl pack() and unpack() tutorial<br />
<a href="http://perlcn.net">perl</a>pod             Perl plain old documentation<br />
<a href="http://perlcn.net">perl</a>podspec         Perl plain old documentation format specification<br />
<a href="http://perlcn.net">perl</a>run             Perl execution and options<br />
<a href="http://perlcn.net">perl</a>diag            Perl diagnostic messages<br />
<a href="http://perlcn.net">perl</a>lexwarn         Perl warnings and their control<br />
<a href="http://perlcn.net">perl</a>debug           Perl debugging<br />
#<a href="http://perlcn.net">perl</a>var             Perl predefined variables<br />
<a href="http://perlcn.net">perl</a>re              Perl regular expressions, the rest of the story<br />
<a href="http://perlcn.net">perl</a>rebackslash     Perl regular expression backslash sequences<br />
<a href="http://perlcn.net">perl</a>recharclass     Perl regular expression character classes<br />
<a href="http://perlcn.net">perl</a>reref           Perl regular expressions quick reference<br />
<a href="http://perlcn.net">perl</a>ref             Perl references, the rest of the story<br />
<a href="http://perlcn.net">perl</a>form            Perl formats<br />
#<a href="http://perlcn.net">perl</a>obj             Perl objects<br />
<a href="http://perlcn.net">perl</a>tie             Perl objects hidden behind simple variables<br />
<a href="http://perlcn.net">perl</a>dbmfilter     Perl DBM filters</p>
<p><a href="http://perlcn.net">perl</a>ipc             Perl interprocess communication<br />
<a href="http://perlcn.net">perl</a>fork            Perl fork() information<br />
<a href="http://perlcn.net">perl</a>number          Perl number semantics<br />
<a href="http://perlcn.net">perl</a>thrtut          Perl threads tutorial<br />
<a href="http://perlcn.net">perl</a>othrtut       Old Perl threads tutorial<br />
<a href="http://perlcn.net">perl</a>port            Perl portability guide<br />
<a href="http://perlcn.net">perl</a>locale          Perl locale support<br />
<a href="http://perlcn.net">perl</a>uniintro        Perl Unicode introduction<br />
<a href="http://perlcn.net">perl</a>unicode         Perl Unicode support<br />
<a href="http://perlcn.net">perl</a>unifaq          Perl Unicode FAQ<br />
<a href="http://perlcn.net">perl</a>unitut          Perl Unicode tutorial<br />
<a href="http://perlcn.net">perl</a>ebcdic          Considerations for running Perl on EBCDIC platforms<br />
<a href="http://perlcn.net">perl</a>sec             Perl security<br />
<a href="http://perlcn.net">perl</a>mod             Perl modules: how they work<br />
<a href="http://perlcn.net">perl</a>modlib          Perl modules: how to write and use<br />
<a href="http://perlcn.net">perl</a>modstyle        Perl modules: how to write modules with style<br />
<a href="http://perlcn.net">perl</a>modinstall      Perl modules: how to install from CPAN<br />
<a href="http://perlcn.net">perl</a>newmod          Perl modules: preparing a new module for distribution<br />
<a href="http://perlcn.net">perl</a>pragma          Perl modules: writing a user pragma<br />
<a href="http://perlcn.net">perl</a>util            utilities packaged with the Perl distribution<br />
<a href="http://perlcn.net">perl</a>compile         Perl compiler suite intro<br />
<a href="http://perlcn.net">perl</a>filter          Perl source filters<br />
*<a href="http://perlcn.net">perl</a>glossary        Perl Glossary<br />
<span style="font-weight: bold;"> Internals and C Language Interface</span><br />
<a href="http://perlcn.net">perl</a>hack            Perl hackers guide<br />
<a href="http://perlcn.net">perl</a>repository      Perl source repository<br />
<span style="font-weight: bold;"> Miscellaneous</span><br />
<a href="http://perlcn.net">perl</a>book            Perl book information<br />
<a href="http://perlcn.net">perl</a>community       Perl community information<br />
<a href="http://perlcn.net">perl</a>todo            Perl things to do<br />
<a href="http://perlcn.net">perl</a>doc             Look up Perl documentation in Pod format<br />
<span style="font-weight: bold;"> Platform-Specific</span><br />
<a href="http://perlcn.net">perl</a>win32           Perl notes for Windows</p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月26日 -- <a href="http://perlcn.net/google-translator-tool-kit-google-translator-toolkit" title="谷歌译者工具包-Google Translator Toolkit">谷歌译者工具包-Google Translator Toolkit</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/perldoc-translation-plan/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SecureCRT配置详解及使用技巧</title>
		<link>http://perlcn.net/securecrt-configure-and</link>
		<comments>http://perlcn.net/securecrt-configure-and#comments</comments>
		<pubDate>Mon, 25 Jan 2010 09:02:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[configure]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=79</guid>
		<description><![CDATA[SecureCRT软件的用户数据文件保存在%USERPROFILE%\Application Data\VanDyke\ConfigVanDyke 目录中。
其中主要有几个文件：

1、Global.ini        全局配置（所有的配置项目都可以在这里头找到，甚至是菜单里头没看到的）
2、Color Schemes.ini
定义颜色方案
3、SSH2.ini  SSH2登录的一些配置选项
4、最近文件列表 SecureCRT.ini
顾名思义，SecureCRT为每个连接建立一个相应的配置文件，所有的连接配置文件都列在 SecureCRT.ini里头，可以理解成索引或者地址簿 ^_^
5、Sessions
目录下每项对应一个连接的配置文件
6、KnownHosts
这个文件夹里头是存放密钥的，玩*nix用过ssh登录的应该都知道用户目录下会有一个.ssh文件用来存放密钥，这个文件夹和.ssh功能类似
介绍完各个目录和文件了，剩下就是怎么利用好他们了。。
里头的选项都比较的容易看懂，不一一罗列了。。
如果遇到比较棘手的问题，比如菜单没有了（其实可以右键任务栏窗口图标-切换菜单栏）、或者是标题栏都没有了（这个功能菜单来里头没有）等等，都可以通过关闭SecureCRt软件，直接删除Global.ini  的方法来解决 ^_^  
下次再打开软件的时候，会自动生成这个配置文件，所以不必担心软件会出错什么的！ 
相关日志2010年01月25日 -- 借助Fastcopy删除特殊名称的顽固文件和文件夹  (0)]]></description>
			<content:encoded><![CDATA[<p>SecureCRT软件的用户数据文件保存在%USERPROFILE%\Application Data\VanDyke\ConfigVanDyke 目录中。</p>
<p>其中主要有几个文件：<br />
<span id="more-79"></span></p>
<blockquote><p>1、Global.ini        全局配置（所有的配置项目都可以在这里头找到，甚至是菜单里头没看到的）</p>
<p>2、Color Schemes.ini<br />
定义颜色方案</p>
<p>3、SSH2.ini  SSH2登录的一些配置选项</p>
<p>4、最近文件列表 SecureCRT.ini<br />
顾名思义，SecureCRT为每个连接建立一个相应的配置文件，所有的连接配置文件都列在 SecureCRT.ini里头，可以理解成索引或者地址簿 ^_^</p>
<p>5、Sessions<br />
目录下每项对应一个连接的配置文件</p>
<p>6、KnownHosts<br />
这个文件夹里头是存放密钥的，玩*nix用过ssh登录的应该都知道用户目录下会有一个.ssh文件用来存放密钥，这个文件夹和.ssh功能类似</p></blockquote>
<p>介绍完各个目录和文件了，剩下就是怎么利用好他们了。。<br />
里头的选项都比较的容易看懂，不一一罗列了。。</p>
<p>如果遇到比较棘手的问题，比如菜单没有了（其实可以右键任务栏窗口图标-切换菜单栏）、或者是标题栏都没有了（这个功能菜单来里头没有）等等，都可以通过关闭SecureCRt软件，直接删除Global.ini  的方法来解决 ^_^  </p>
<p>下次再打开软件的时候，会自动生成这个配置文件，所以不必担心软件会出错什么的！ </p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/fastcopy-to-delete-special-files-and-folders" title="借助Fastcopy删除特殊名称的顽固文件和文件夹 ">借助Fastcopy删除特殊名称的顽固文件和文件夹 </a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/securecrt-configure-and/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>百度&#8221;被黑&#8221;后的临时解决办法</title>
		<link>http://perlcn.net/baidu-hacked-solutions</link>
		<comments>http://perlcn.net/baidu-hacked-solutions#comments</comments>
		<pubDate>Mon, 25 Jan 2010 08:58:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[baidu]]></category>
		<category><![CDATA[solutions]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=76</guid>
		<description><![CDATA[早上听到同事说baidu“被黑”了。
简单看了下，应该是百度的域名解析出了问题。
网络上的dns服务器同步可能需要一些时间，下面给出一个临时的解决办法。

用记事本程序(notepad)或者其他文本编辑工具打开c:\windows\system32\drivers\etc\hosts文件
之后在最后添加以下几行保存、退出即可
220.181.43.129    news.baidu.com
121.14.88.76      www.baidu.com
220.181.43.128    zhidao.baidu.com
220.181.43.121    mp3.baidu.com
220.181.50.118    image.baidu.com
220.181.43.131    vedio.baidu.com
220.181.37.151    hi.baidu.com
相关日志2010年01月25日 -- [译]Windows Server 2008 Hyper-V的热点问题（Q3） (0)]]></description>
			<content:encoded><![CDATA[<p>早上听到同事说baidu“被黑”了。<br />
简单看了下，应该是百度的域名解析出了问题。<br />
网络上的dns服务器同步可能需要一些时间，下面给出一个临时的解决办法。<br />
<span id="more-76"></span><br />
用记事本程序(notepad)或者其他文本编辑工具打开c:\windows\system32\drivers\etc\hosts文件</p>
<p>之后在最后添加以下几行保存、退出即可</p>
<blockquote><p>220.181.43.129    news.baidu.com<br />
121.14.88.76      www.baidu.com<br />
220.181.43.128    zhidao.baidu.com<br />
220.181.43.121    mp3.baidu.com<br />
220.181.50.118    image.baidu.com<br />
220.181.43.131    vedio.baidu.com<br />
220.181.37.151    hi.baidu.com</p></blockquote>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/top-issues-for-windows-server-2008-hyper-v-q3" title="[译]Windows Server 2008 Hyper-V的热点问题（Q3）">[译]Windows Server 2008 Hyper-V的热点问题（Q3）</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/baidu-hacked-solutions/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>借助Fastcopy删除特殊名称的顽固文件和文件夹</title>
		<link>http://perlcn.net/fastcopy-to-delete-special-files-and-folders</link>
		<comments>http://perlcn.net/fastcopy-to-delete-special-files-and-folders#comments</comments>
		<pubDate>Mon, 25 Jan 2010 08:51:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[fastcopy]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=66</guid>
		<description><![CDATA[fastcopy是Windows下的一个很不错的免费的文件备份同步工具
平时用来在电脑和移动硬盘之间拷贝或者同步文件十分的方便

相对于直接复制或者剪切文件来说，这个软件最大的优点就是直观，而且安全
不用担心拷贝的时候离开了，然后某个文件出错，拷贝停在提示框那。。。回来之后文件还没有拷贝完。。
也不用担心网络拷贝的时候网络不稳定，造成数据同步失败。。
fastcopy的每次操作都会有相近的记录或者错误报告。。。
另外就是这个软件可以集成在资源管理器右键菜单下，可以完全取代系统自带的复制和粘贴甚至删除命令。。
这个工具的操作比系统自带的命令强大的地方不止以上说的日志和安全性方面
还体现在“免疫”特殊名称的文件或文件夹（比如点结尾的名称或者结尾是空格或其他字符的名称。。。如果名称末尾是点，最好用传统dos中的那种缩写的文件名。。比如argh~1这样）
如果你遇到有文件或者文件夹名称怪异，不能进行删除，拷贝，或者复制的时候，可以试一下这个软件！
相关日志2010年01月25日 -- [译]Windows Server 2008 Hyper-V的热点问题（Q3） (0)2010年01月25日 -- SecureCRT配置详解及使用技巧  (0)]]></description>
			<content:encoded><![CDATA[<p>fastcopy是Windows下的一个很不错的免费的文件备份同步工具<br />
平时用来在电脑和移动硬盘之间拷贝或者同步文件十分的方便</p>
<p><span id="more-66"></span><br />
相对于直接复制或者剪切文件来说，这个软件最大的优点就是直观，而且安全<br />
不用担心拷贝的时候离开了，然后某个文件出错，拷贝停在提示框那。。。回来之后文件还没有拷贝完。。</p>
<p>也不用担心网络拷贝的时候网络不稳定，造成数据同步失败。。</p>
<p>fastcopy的每次操作都会有相近的记录或者错误报告。。。</p>
<p>另外就是这个软件可以集成在资源管理器右键菜单下，可以完全取代系统自带的复制和粘贴甚至删除命令。。</p>
<p>这个工具的操作比系统自带的命令强大的地方不止以上说的日志和安全性方面</p>
<p>还体现在“免疫”特殊名称的文件或文件夹（比如点结尾的名称或者结尾是空格或其他字符的名称。。。如果名称末尾是点，最好用传统dos中的那种缩写的文件名。。比如argh~1这样）</p>
<p>如果你遇到有文件或者文件夹名称怪异，不能进行删除，拷贝，或者复制的时候，可以试一下这个软件！</p>
<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/top-issues-for-windows-server-2008-hyper-v-q3" title="[译]Windows Server 2008 Hyper-V的热点问题（Q3）">[译]Windows Server 2008 Hyper-V的热点问题（Q3）</a> (0)</li><li>2010年01月25日 -- <a href="http://perlcn.net/securecrt-configure-and" title="SecureCRT配置详解及使用技巧 ">SecureCRT配置详解及使用技巧 </a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/fastcopy-to-delete-special-files-and-folders/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMware中Linux(Federa Core)下网卡无法使用故障处理</title>
		<link>http://perlcn.net/vmware-linux-network-trouble-solution</link>
		<comments>http://perlcn.net/vmware-linux-network-trouble-solution#comments</comments>
		<pubDate>Mon, 25 Jan 2010 08:46:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=61</guid>
		<description><![CDATA[启动的时候，提示：
Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization.   [FAILED]
service network start的时候也是一样的提示。。。

lspci的时候可以看到
02：00.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE](rev 10)
lsmod的时候可以看到
pcnet32   31476  0
这样看来的话，驱动程序应该没有什么问题
查了很多的资料，没有找到解决办法
后来找到这个帖子http://ephemeralvalue.com/?p=23
删除/etc/udev/rules.d/70-persistent-net.rules 后，重启机器后就ok了！
这个问题应该多见于Vmware中，猜想造成这个问题的原因应该是由于虚拟机是从另一个机器拷过来的，一个网卡被认作2个网卡了，70-persistent-net.rules中出现了2个mac地址的情况
原文内容如下：
Cloning Ubuntu Server 7.10 on VMware ESX
February 18, 2008, 2:49 pm
After cloning a virtual machine running Ubuntu Server 7.10 I found [...]]]></description>
			<content:encoded><![CDATA[<p>启动的时候，提示：</p>
<blockquote><p><span style="color: #ff0000;">Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization.   [FAILED]</span></p></blockquote>
<p>service network start的时候也是一样的提示。。。<br />
<span id="more-61"></span><br />
lspci的时候可以看到</p>
<blockquote><p>02：00.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE](rev 10)</p></blockquote>
<p>lsmod的时候可以看到</p>
<blockquote><p>pcnet32   31476  0</p></blockquote>
<p>这样看来的话，驱动程序应该没有什么问题</p>
<p>查了很多的资料，没有找到解决办法<br />
后来找到这个帖子http://ephemeralvalue.com/?p=23</p>
<p>删除/etc/udev/rules.d/70-persistent-net.rules 后，重启机器后就ok了！</p>
<p>这个问题应该多见于Vmware中，猜想造成这个问题的原因应该是由于虚拟机是从另一个机器拷过来的，一个网卡被认作2个网卡了，70-persistent-net.rules中出现了2个mac地址的情况</p>
<p>原文内容如下：</p>
<blockquote><p>Cloning Ubuntu Server 7.10 on VMware ESX<br />
February 18, 2008, 2:49 pm</p>
<p>After cloning a virtual machine running Ubuntu Server 7.10 I found that it didn’t have any network available. Restarting networking gave:</p>
<p>sudo /etc/init.d/networking restart</p>
<p>* Reconfiguring network interfaces&#8230;<br />
eth0: ERROR while getting interface flags: No such device<br />
SIOCSIFADDR: No such device<br />
eth0: ERROR while getting interface flags: No such device<br />
SIOCSIFNETMASK: No such device<br />
SIOCSIFBRDADDR: No such device<br />
eth0: ERROR while getting interface flags: No such device<br />
eth0: ERROR while getting interface flags: No such device<br />
Failed to bring up eth0.</p>
<p>The problem lies in the fact that ethernet MAC addresses are cached. You need to remove a file to clear the cached value:</p>
<p>sudo rm /etc/udev/rules.d/70-persistent-net.rules</p>
<p>After a restart of your server you should have networking back again.</p>
<p>I also had to edit the following files to change the static ip addresses and hostname:</p>
<p>* /etc/hosts – change ip address and hostnames<br />
* /etc/hostname – change hostname<br />
* /etc/network/interfaces – change ip address</p></blockquote>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/vmware-linux-network-trouble-solution/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>自动解压目录及子目录下所有压缩文件的批处理</title>
		<link>http://perlcn.net/auto-unzip-files-in-subfolders</link>
		<comments>http://perlcn.net/auto-unzip-files-in-subfolders#comments</comments>
		<pubDate>Mon, 25 Jan 2010 06:39:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Batch]]></category>
		<category><![CDATA[解压]]></category>
		<category><![CDATA[子文件夹]]></category>
		<category><![CDATA[批处理]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=50</guid>
		<description><![CDATA[以下内容存为.bat文件，置于你需要操作的目录下，双击运行即可自动解压目录及子目录下的所有.rar压缩文件，保持原有目录结构，并在解压后删除原压缩文件。
可以根据自己需要对目录等进行修改，改成带参数的批处理或者对特定目录操作的批处理


::将这个批处理放在目录下运行，将解压缩该目录及其子目录下的所有压缩files
::Written by mwm5 2009-11-03
::http://nkmis02.blog.51cto.com@echo off
::假定winrar软件安装于c盘默认目录下，如自定义目录安装，请修改该行
set rar=&#34;c:\Program Files\Winrar\rar.exe&#34;
&#160;
::默认对当前批处理文件所在文件夹及子文件夹操作，也可以自定义文件夹根目录
set srcdir=&#34;.&#34;
::set srcdir=&#34;E:\Perl学习资料打包(搜集整理By mwm5)&#34;
&#160;
::winrar命令行只支持对.rar操作，无奈ing~~
for /r %srcdir% %%i in &#40;*.rar&#41; do %rar% x -y &#34;%%i&#34; &#34;%%~dpi&#34; &#38;&#38; del &#34;%%i&#34;&#62;nul

相关日志2010年01月25日 -- 远程桌面连接日志脚本bat&#038;vbs~3389也安全  (0)]]></description>
			<content:encoded><![CDATA[<p>以下内容存为.bat文件，置于你需要操作的目录下，双击运行即可自动解压目录及子目录下的所有.rar压缩文件，保持原有目录结构，并在解压后删除原压缩文件。</p>
<p>可以根据自己需要对目录等进行修改，改成带参数的批处理或者对特定目录操作的批处理<br />
<span id="more-50"></span></p>

<div class="wp_syntax"><div class="code"><pre class="winbatch" style="font-family:monospace;"><span style="color: #FF1010; font-weight: bold;">::将这个批处理放在目录下运行，将解压缩该目录及其子目录下的所有压缩files</span>
<span style="color: #FF1010; font-weight: bold;">::Written by mwm5 2009-11-03</span>
<span style="color: #FF1010; font-weight: bold;">::http://nkmis02.blog.51cto.com@echo off</span>
<span style="color: #FF1010; font-weight: bold;">::假定winrar软件安装于c盘默认目录下，如自定义目录安装，请修改该行</span>
set rar=<span style="color: #ff0000;">&quot;c:\Program Files\Winrar\rar.exe&quot;</span>
&nbsp;
<span style="color: #FF1010; font-weight: bold;">::默认对当前批处理文件所在文件夹及子文件夹操作，也可以自定义文件夹根目录</span>
set srcdir=<span style="color: #ff0000;">&quot;.&quot;</span>
<span style="color: #FF1010; font-weight: bold;">::set srcdir=&quot;E:\Perl学习资料打包(搜集整理By mwm5)&quot;</span>
&nbsp;
<span style="color: #FF1010; font-weight: bold;">::winrar命令行只支持对.rar操作，无奈ing~~</span>
<span style="color: #800080;">for</span> <span style="color: #66cc66;">/</span>r <span style="color: #66cc66;">%</span>srcdir<span style="color: #66cc66;">%</span> <span style="color: #66cc66;">%%</span>i <span style="color: #800080;">in</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">*</span>.rar<span style="color: #66cc66;">&#41;</span> do <span style="color: #66cc66;">%</span>rar<span style="color: #66cc66;">%</span> x <span style="color: #66cc66;">-</span>y <span style="color: #ff0000;">&quot;%%i&quot;</span> <span style="color: #ff0000;">&quot;%%~dpi&quot;</span> <span style="color: #66cc66;">&amp;&amp;</span> del <span style="color: #ff0000;">&quot;%%i&quot;</span><span style="color: #66cc66;">&gt;</span>nul</pre></div></div>

<h2  class="related_post_title">相关日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/remote_desktop_3389_security_log" title="远程桌面连接日志脚本bat&#038;vbs~3389也安全 ">远程桌面连接日志脚本bat&#038;vbs~3389也安全 </a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/auto-unzip-files-in-subfolders/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>google谷歌搜索原理</title>
		<link>http://perlcn.net/google-search-principle</link>
		<comments>http://perlcn.net/google-search-principle#comments</comments>
		<pubDate>Mon, 25 Jan 2010 06:32:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[谷歌]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[搜索]]></category>

		<guid isPermaLink="false">http://mwm5.3800z.com/?p=45</guid>
		<description><![CDATA[
热评日志2010年01月25日 -- Perl文档(perldoc)翻译计划 (1)2010年01月25日 -- Perl学习资料打包(搜集整理By mwm5)  (1)2010年01月30日 -- Firefox插件-Autopager-网页/论坛自动翻页插件 (1)2010年01月28日 -- Perl常用模块使用例子(转载)3 (1)2010年01月27日 -- 留言 (1)]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.seo-service.com.cn/UPLOAD/google.swf"></a><object style="width: 480px; height: 100px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="100" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.seo-service.com.cn/UPLOAD/google.swf" /><embed style="width: 480px; height: 100px;" type="application/x-shockwave-flash" width="480" height="100" src="http://www.seo-service.com.cn/UPLOAD/google.swf"></embed></object></p>
<h2  class="related_post_title">热评日志</h2><ul class="related_post"><li>2010年01月25日 -- <a href="http://perlcn.net/perldoc-translation-plan" title="Perl文档(perldoc)翻译计划">Perl文档(perldoc)翻译计划</a> (1)</li><li>2010年01月25日 -- <a href="http://perlcn.net/perl_books_by_mwm5" title="Perl学习资料打包(搜集整理By mwm5) ">Perl学习资料打包(搜集整理By mwm5) </a> (1)</li><li>2010年01月30日 -- <a href="http://perlcn.net/firefox-plug-autopager-website-forum-auto-next-page-plug-in" title="Firefox插件-Autopager-网页/论坛自动翻页插件">Firefox插件-Autopager-网页/论坛自动翻页插件</a> (1)</li><li>2010年01月28日 -- <a href="http://perlcn.net/perl-examples-3" title="Perl常用模块使用例子(转载)3">Perl常用模块使用例子(转载)3</a> (1)</li><li>2010年01月27日 -- <a href="http://perlcn.net/guest-book" title="留言">留言</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://perlcn.net/google-search-principle/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
