<?xml version="1.0" encoding="GBK"?>
<rss xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>远滤</title>
    <link>http://blog.china.com:80/u/061210/20328/</link>
    <description>自我</description>
    <managingEditor>pengshaosheng</managingEditor>
    <dc:creator>pengshaosheng</dc:creator>
    <item>
      <title>用友数据备份恢复的方法</title>
      <link>http://blog.china.com:80/u/061210/20328/200807/3478790.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;&#xD;
&lt;DIV&gt;用友数据备份恢复的方法&lt;BR&gt;1、&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用友老版本7.21备份恢复说明：&lt;BR&gt;备份软件安装目录下（ufsoft72）里的ztxxx的文件夹和zwset.mdb；恢复时注意可能需要修改zwset.mdb文件里的g_account表，其中有cacc_path数据路径名；unc_path网络路径；Computer服务器名称，记住机器名必须是大写的。&lt;BR&gt;2、&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用友u8软件的备份恢复说明：&lt;BR&gt;备份：&lt;BR&gt;a)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一般是进入系统服务—〉系统管理—〉admin系统注册—〉账套输出—〉选择备份文件存放的位置（最好是先建立备份的文件夹，文件夹名称最好是日期加账套号）；备份出来的是2个文件，文件名为UfErpAct.lst、UFDATA.BA_，其中UfErpAct.lst是数据头文件记录着账套信息，可以使用记事本打开这个文件，修改账套号和账套路径；UFDATA.BA_是数据文件。&lt;BR&gt;b)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果不能正常进入软件备份，可以备份用友程序目录U8soft下的admin文件夹里的：UFSystem.mdf、UFSystem.ldf、ufsub.mdf、ufsub.ldf和zt001、zt002等账套的数据文件夹。&lt;BR&gt;恢复：&lt;BR&gt;c)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 正常的备份恢复需要进入系统服务—〉系统管理—〉admin系统注册—〉账套引入—〉选择恢复的路径。&lt;BR&gt;d)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果是备份的是数据文件，可以这样先把软件安装完，进入一次系统管理，然后把用友的服务和sql 数据库的服务都停止了，记住必须都停止了，然后把UFSystem.mdf、UFSystem.ldf、ufsub.mdf、ufsub.ldf这4个文件复制到admin文件夹里覆盖，把zt001、zt002等账套数据的文件夹复制到原来数据存放的路径里，然后启动刚停止的服务，最后进入sql server的企业管理器，附加ztxxx里的数据库，就可以了。&lt;BR&gt;其他sql版的用友软件备份恢复方法类似，区别是：用友财务通使用的数据路径是uf2000；用友U8 8.21的数据路径是wf821。 &#xD;
&lt;DIV&gt;附件：&lt;BR&gt;SQL版&lt;BR&gt;1)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UFSUB.ldf、UFSUB.mdf、ufsystem.mdf、ufsystem.ldf用友系统数据库，存储账套的基本信息，在admin目录下&lt;BR&gt;2)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UFDATA.ldf、UFDATA.mdf用友数据库，存储具体数据,放在账套目录下如：ZT001等&lt;/DIV&gt;&#xD;
&lt;DIV&gt;数据备份说明：&lt;BR&gt;UFERPACT.LST&lt;BR&gt;这个文件是索引文件，在数据恢复时用于为数据文件指路。其里面还包含了一些账套的&lt;BR&gt;基本信息。如：账套号、年度等等。&lt;BR&gt;UFDATA.BA_&lt;BR&gt;这个文件是数据压缩文件，是真正的数据文件。&lt;BR&gt;&lt;/DIV&gt;&lt;A class=hidden href="http://81770545.blog.51cto.com/276642/59195"&gt;本文出自 51CTO.COM技术博客&lt;/A&gt;&lt;/DIV&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期四, 31 七月 2008 09:56:30 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200807/3478790.html</guid>
      <dc:date>2008-07-31T09:56:30Z</dc:date>
    </item>
    <item>
      <title>mhdd使用方法</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2404693.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;&#xD;
&lt;BLOCKQUOTE&gt;&lt;A href="http://www.hywxw.com/Article/ShowArticle.asp?ArticleID=1163"&gt;http://www.hywxw.com/Article/ShowArticle.asp?ArticleID=1163&lt;/A&gt;&lt;/BLOCKQUOTE&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期一, 21 四月 2008 12:02:59 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2404693.html</guid>
      <dc:date>2008-04-21T12:02:59Z</dc:date>
    </item>
    <item>
      <title>易尚3526m使用说明</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2387074.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;&lt;A href="http://guide.it168.com/pages/7929.shtml"&gt;http://guide.it168.com/pages/7929.shtml&lt;/A&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期六, 19 四月 2008 08:24:23 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2387074.html</guid>
      <dc:date>2008-04-19T08:24:23Z</dc:date>
    </item>
    <item>
      <title>marquee参数详解</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2371562.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;align：是设定活动字幕的位置，除了居左、居中、居右三种位置外，又增加靠上（top）和靠下（bottom）两种位置。 &lt;BR&gt;Bgcolor：用于设定活动字幕的背景颜色，可以使用英文的单词也可以是十六进制数的。 &lt;BR&gt;Direction：用于设定活动字幕的滚动方向是向左（left）、向右（right）、向上（up）、向下（down）。 &lt;BR&gt;Behavior：用于设定滚动的方式，主要由三种方式：&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; behavior="scroll"表示由一端滚动到另一端；&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; behavior="slide":表示由一端快速滑动到另一端，且不再重复；&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;behavior="alternate"表示在两端之间来回滚动。 &lt;BR&gt;Height：用于设定滚动字幕的高度。 &lt;BR&gt;Width：则设定滚动字幕的宽度。 &lt;BR&gt;Hspace和vspace：分别用于设定滚动字幕的左右边框和上下边框的宽度。 &lt;BR&gt;Scrollamount：用于设定活动字幕的滚动距离。数值越小，滚动的速度就越快。 &lt;BR&gt;scrolldelay：用于设定滚动两次之间的延迟时间，数值越小，间隔就越小。 &lt;BR&gt;Loop：用于设定滚动的次数，当loop=-1表示一直滚动下去，直到页面更新。其中默认情况是向左滚动无限次，字幕高度是文本高度；滚动范围：水平滚动的宽度是当前位置的宽度；垂直滚动的高度是当前位置的高度。&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期四, 17 四月 2008 09:18:27 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2371562.html</guid>
      <dc:date>2008-04-17T09:18:27Z</dc:date>
    </item>
    <item>
      <title>电源管理模式</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2332779.html</link>
      <description>&lt;![CDATA[ &lt;DIV class=content_text id=content&gt;&#xD;
&lt;P&gt;操作系统最后识别出来的的HAL类型，需要主板芯片组、主板BIOS、CPU同时都支持，其中有一个不能支持，就将会被识别成其它类型，或者识别出来不能进入系统，导致启动蓝屏。&lt;BR&gt;两种特殊类型的HAL&lt;BR&gt;Compaq SystemPro Multiprocessor or 100% Compatible&lt;BR&gt;我猜测这个应该是alpha机器专用HAL&lt;BR&gt;Silicon Graphics Visual Workstation&lt;BR&gt;SGI图形工作站专用HAL&lt;BR&gt;这两种系统在做万能GHOST的时候可以不考虑。因为这个很可能连Standard PC都不兼容。&lt;BR&gt;剩下的6种HAL的区别，主要就在系统是否支持ACPI（高级电源管理接口）和APIC（高级可编程中断控制器）上。&lt;BR&gt;article/thumb/200606/acpiu.jpg&lt;/P&gt;&#xD;
&lt;P&gt;其实，他上面提到的一些芯片组对应的类型，只能作为参考，因为很重要的一点就是不同bios支持的不同，就会导致，最终识别出来的类型不同。&lt;BR&gt;找不到我以前写的了，自己再写一次吧，Climbing所写的都是以前的总结经验，但是这个不能作为判断的标准。比如，P3机器也有ACPI Multiprocessor PC和ACPI Uniprocessor PC，比如支持双处理器的主板，及一些工作站的主板等。P4的机器，也可能是Advanced Configuration and Power Inte***ce (ACPI) PC和Standard PC，原因可能是早期BIOS不完善，BIOS设置被关闭。&lt;BR&gt;article/thumb/200606/apic.jpg&lt;/P&gt;&#xD;
&lt;P&gt;==============================&lt;BR&gt;ACPI Multiprocessor PC&lt;BR&gt;==============================&lt;BR&gt;当计算机识别出来是此类型，说明你的系统是多处理器或者支持HT（超线程）处理器，并且主板和主板的BIOS支持并打开APIC和ACPI&lt;BR&gt;ACPI Multiprocessor PC=APIC+ACPI+多处理器（包括支持HT处理器）&lt;BR&gt;==============================&lt;BR&gt;ACPI Uniprocessor PC&lt;BR&gt;==============================&lt;BR&gt;这是当前最为常见的类型，主板和主板的BIOS支持并打开APIC和ACPI，系统是单处理器。&lt;BR&gt;ACPI Uniprocessor PC=APIC+ACPI+单处理器（不包括支持HT处理器）&lt;BR&gt;============================================================&lt;BR&gt;Advanced Configuration and Power Inte***ce (ACPI) PC&lt;BR&gt;============================================================&lt;BR&gt;这是以前比较常见的类型，系统只提供了对ACPI的支持。主板和主板的BIOS支持并打开ACPI。并且没有打开APIC，或者主板不支持APIC&lt;BR&gt;==============================&lt;BR&gt;MPS Multiprocessor PC&lt;BR&gt;==============================&lt;BR&gt;服务器上比较常见，这个是不支持ACPI的，对应ACPI Multiprocessor PC&lt;BR&gt;MPS Multiprocessor PC=APIC+多处理器（包括支持HT处理器）&lt;BR&gt;==============================&lt;BR&gt;MPS Uniprocessor PC&lt;BR&gt;==============================&lt;BR&gt;我猜测，这个在以前的工作站上比较多，同上面一样不支持ACPI，对应ACPI Uniprocessor PC&lt;BR&gt;MPS Uniprocessor PC=APIC+单处理器（不包括支持HT处理器）&lt;BR&gt;=================&lt;BR&gt;Standard PC&lt;BR&gt;=================&lt;BR&gt;呵呵，古老的电脑都是这个类型的，既不支持ACPI，也不支持APIC。注意，很多P3主板由于BIOS默认没有打开ACPI功能，也会识别成Standard PC，导致点击关闭计算机后，系统提示你手动关闭计算机电源。&lt;/P&gt;&lt;/DIV&gt;&#xD;
&lt;DIV&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期日, 13 四月 2008 23:16:13 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2332779.html</guid>
      <dc:date>2008-04-13T23:16:13Z</dc:date>
    </item>
    <item>
      <title>变量延迟</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2279258.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;为了更好的说明问题，我们先引入一个例子。&lt;BR&gt;例1:&lt;BR&gt;	@echo off&lt;BR&gt;	set a=4&lt;BR&gt;	set a=5&amp;amp;echo %a%&lt;BR&gt;	pause&lt;BR&gt;结果：4&lt;BR&gt;解说：为什么是4而不是5呢？在echo之前明明已经把变量a的值改成5了？&lt;BR&gt;&lt;BR&gt;让我们先了解一下批处理运行命令的机制：&lt;BR&gt;&lt;BR&gt;批处理读取命令时是按行读取的（另外例如for命令等，其后用一对圆括号闭合的所有语句也当作一行），在处理之前要完成必要的预处理工作，这其中就包括对该行命令中的变量赋值。我们现在分析一下例1，批处理在运行这句“set a=5&amp;amp;echo %a%”之前就已经对变量a赋了值，那么%a%当然就是4了！（没有为什么，批处理就是这样做的。）&lt;BR&gt;&lt;BR&gt;而为了能够感知环境变量的动态变化，批处理设计了变量延迟。简单来说，在读取了一条完整的语句之后，不立即对该行的变量赋值，而会在某个单条语句执行之前再进行赋值，也就是说“延迟”了对变量的赋值。&lt;BR&gt;&lt;BR&gt;那么如何开启变量延迟呢？变量延迟又需要注意什么呢？举个例子说明一下：&lt;BR&gt;例2:&lt;BR&gt;	@echo off&lt;BR&gt;	setlocal enabledelayedexpansion&lt;BR&gt;	set a=4&lt;BR&gt;	set a=5&amp;amp;echo !a!&lt;BR&gt;	pause	&lt;BR&gt;结果：5&lt;BR&gt;解说：由于启动了变量延迟，得到了正确答案。变量延迟的启动语句是“setlocal enabledelayedexpansion”，并且变量要用一对叹号“!!”括起来（注意要用英文的叹号），否则就没有变量延迟的效果。&lt;BR&gt;分析一下例2，首先“setlocal enabledelayedexpansion”开启变量延迟，然后“set a=4”先给变量a赋值为4，“set a=5&amp;amp;echo !a!”这句是给变量a赋值为5并输出（由于启动了变量延迟，所以批处理能够感知到动态变化，即不是先给该行变量赋值，而是在运行过程中给变量赋值，因此此时a的值就是5了）。&lt;BR&gt;&lt;BR&gt;再举一个例子巩固一下。&lt;BR&gt;例3:&lt;BR&gt;	@echo off&lt;BR&gt;	setlocal enabledelayedexpansion&lt;BR&gt;	for /l %%i in (1,1,5) do (&lt;BR&gt;	set a=%%i&lt;BR&gt;	echo !a!&lt;BR&gt;	)&lt;BR&gt;	pause&lt;BR&gt;&lt;BR&gt;结果：&lt;BR&gt;1&lt;BR&gt;2&lt;BR&gt;3&lt;BR&gt;4&lt;BR&gt;5&lt;BR&gt;解说：本例开启了变量延迟并用“!!”将变量扩起来，因此得到我们预期的结果。如果不用变量延迟会出现什么结果呢？结果是这样的：&lt;BR&gt;ECHO 处于关闭状态。&lt;BR&gt;ECHO 处于关闭状态。&lt;BR&gt;ECHO 处于关闭状态。&lt;BR&gt;ECHO 处于关闭状态。&lt;BR&gt;ECHO 处于关闭状态。&lt;BR&gt;即没有感知到for语句中的动态变化。&lt;BR&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期一, 07 四月 2008 20:19:32 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2279258.html</guid>
      <dc:date>2008-04-07T20:19:32Z</dc:date>
    </item>
    <item>
      <title>set命令详解</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2279257.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;先回顾一下他设置自定义变量的用法&lt;BR&gt;&lt;BR&gt;例子:&lt;BR&gt;@echo off&lt;BR&gt;set var=我是值&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法!&lt;BR&gt;set 是命令&amp;nbsp; &amp;nbsp;var是变量名&amp;nbsp;&amp;nbsp;=号右边的"我是值"是变量的值&lt;BR&gt;在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var%&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;这种SET语法只能直接在BAT代码的提前赋予变量的值,有时候我们需要提供一个交互界面,让&lt;BR&gt;用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说这SET的这&lt;BR&gt;种语法,只需要加一个"/P"参数就可以了!&lt;BR&gt;&lt;BR&gt;例子:&lt;BR&gt;@echo off&lt;BR&gt;set /p var=请输入变量的值: &lt;BR&gt;if %var% == 1 echo 您输入了 1 ~_~ &lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;set /p 是命令语法&amp;nbsp;&amp;nbsp;var是变量名&amp;nbsp; &amp;nbsp; =号右边的"请输入变量的值: ",这个是提示语,不是变&lt;BR&gt;&lt;BR&gt;量的值了!&lt;BR&gt;运行后,我们在提示语后面直接输入1,就会显示一行您输入了 1 ~_~ ,输入别的就没有任何反&lt;BR&gt;&lt;BR&gt;映!&lt;BR&gt;&lt;BR&gt;好了,先回顾到这,现在讲SET其他功能&lt;BR&gt;&lt;BR&gt;使用set /?查看SET的帮助我们发现SET除了我上面讲的&lt;BR&gt;SET [variable=[string]]&lt;BR&gt;SET /P variable=[promptString]&lt;BR&gt;这两种语法外,还有如下几种语法:&lt;BR&gt;SET /A expression&lt;BR&gt;环境变量替换已如下增强:&lt;BR&gt;%PATH:str1=str2%&lt;BR&gt;%PATH:~10,5%&lt;BR&gt;%PATH:~-10%&lt;BR&gt;%PATH:~0,-2%&lt;BR&gt;&lt;BR&gt;这机种语法有什么用处呢?现在我们来一个个讲解他们!&lt;BR&gt;&lt;BR&gt;SET /A expression&amp;nbsp;&amp;nbsp;&lt;BR&gt;/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式&lt;BR&gt;评估器很简单并以递减的优先权顺序支持下列操作:&lt;BR&gt;&amp;nbsp; &amp;nbsp; ()&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;- 分组&lt;BR&gt;&amp;nbsp; &amp;nbsp; ! ~ -&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;- 一元运算符&lt;BR&gt;&amp;nbsp; &amp;nbsp; * / %&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;- 算数运算符&lt;BR&gt;&amp;nbsp; &amp;nbsp; + -&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;- 算数运算符&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;amp;lt;&amp;amp;lt; &amp;amp;gt;&amp;amp;gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;- 逻辑移位&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;amp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; - 按位“与”&lt;BR&gt;&amp;nbsp; &amp;nbsp; ^&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; - 按位“异”&lt;BR&gt;&amp;nbsp; &amp;nbsp; |&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; - 按位“或”&lt;BR&gt;&amp;nbsp; &amp;nbsp; = *= /= %= += -=&amp;nbsp; &amp;nbsp; - 赋值&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;amp;= ^= |= &amp;amp;lt;&amp;amp;lt;= &amp;amp;gt;&amp;amp;gt;=&lt;BR&gt;&amp;nbsp; &amp;nbsp; ,&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; - 表达式分隔符&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;上面这些是系统帮助里的内容,看着是不是有点晕,没关系我来简单解释一下:&lt;BR&gt;set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算!&lt;BR&gt;&lt;BR&gt;现在开始举例子介绍这些数学符号的用法:&lt;BR&gt;看例子 这里的例子请直接在CMD下拷贝命令运行,不需要保存为BAT!&lt;BR&gt;set /a var=1 + 1&amp;nbsp;&amp;nbsp;&lt;BR&gt;set /a 语法, var变量名 1 + 1 数学式子&lt;BR&gt;&lt;BR&gt;拷贝运行后会直接显示一个2,或者运行完后我们输入echo %var%,也是二,这就是&lt;BR&gt;一个简单的加法运算!&lt;BR&gt;&lt;BR&gt;set /a var=2 - 1&amp;nbsp;&amp;nbsp;结果是多少呢?如果你看不到结果就echo %var%.....&lt;BR&gt;set /a var=2 * 2 乘法运算&lt;BR&gt;set /a var=2 / 2 除法运算&lt;BR&gt;set /a var=(1+1) + (1+1) 结果等于4 看得懂吧!&lt;BR&gt;set /a a=1+1,b=2+1,c=3+1&amp;nbsp;&amp;nbsp;运行后会显示一个4,但我们用&lt;BR&gt;echo %a% %b% %c%后看结果,会发现其他数学运算也有效果!,这就是"斗"号的&lt;BR&gt;作用!&lt;BR&gt;有时候我们需要直接在原变量进行加减操作就可以用这种语法&lt;BR&gt;set /a var+=1&amp;nbsp;&amp;nbsp;这样的语法对应原始语法就是set /a var = %var% + 1&lt;BR&gt;都是一样的结果,在原变量的值上在进行数学运算,不过这样写简单一点&lt;BR&gt;在来一个:&amp;nbsp;&amp;nbsp;&lt;BR&gt;set /a var*=2 &lt;BR&gt;其他都这么用,只要帮助里有这个语法!&lt;BR&gt;&lt;BR&gt;另外还有一些用逻辑或取余操作符,这些符号,按照上面的使用方法会报错的&lt;BR&gt;&lt;BR&gt;比如我们在CMD里输入set /a var=1 &amp;amp; 1 "与运算",他并不会显示为1,而是报错,&lt;BR&gt;为什么?对于这样的"逻辑或取余操作符",我们需要把他们用双引号引起来,看例子&lt;BR&gt;&lt;BR&gt;set /a var= 1 "&amp;amp;" 1 这样结果就显示出来了,其他逻辑或取余操作符用法&lt;BR&gt;set /a var= 1 "+" 1 异运算&lt;BR&gt;set /a var= 1 "%" 1&amp;nbsp;&amp;nbsp;取模运算&lt;BR&gt;set /a var= 2 "&amp;amp;lt;&amp;amp;lt;" 2 次方运算&lt;BR&gt;set /a var= 4 "&amp;amp;gt;&amp;amp;gt;" 2 这个不太记得数学里的叫法....&lt;BR&gt;还有几个数学不太行,搞不清楚了....不列出来了,&lt;BR&gt;这些符号也可以用&amp;amp;= ^= |= &amp;amp;lt;&amp;amp;lt;= &amp;amp;gt;&amp;amp;gt;= 这样的简单用法如&lt;BR&gt;set /a var"&amp;amp;=" 1 等于set /a var = %var% "&amp;amp;" 1 注意引号&lt;BR&gt;&lt;BR&gt;好符号说到这,现在说%PATH:str1=str2%&lt;BR&gt;这个是替换变量值的内容,看例子&lt;BR&gt;@echo off&lt;BR&gt;set a= bbs.verybat.cn&lt;BR&gt;echo 替换前的值: "%a%"&lt;BR&gt;set var=%a: =%&lt;BR&gt;echo 替换后的值: "%var%"&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;对比一下,我们发现他把变量%a%的空格给替换掉了,从这个例子,我们就可以发现&lt;BR&gt;%PATH:str1=str2%这个操作就是把变量%PATH%的里的str1全部用str2替换&lt;BR&gt;&lt;BR&gt;比如我们把上面的例子改成这样&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;echo 替换前的值: "%a%"&lt;BR&gt;set var=%a:.=伤脑筋%&lt;BR&gt;echo 替换后的值: "%var%"&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;解释set var=%a:.=伤脑筋%&lt;BR&gt;&amp;nbsp; &amp;nbsp; set命令 var变量名 字a是要进行字符替换的变量的值,"."为要替换的值,&lt;BR&gt;"伤脑筋"为替换后的值!&lt;BR&gt;执行后就会把变量%a%里面的"."全部替换为"伤脑筋"&lt;BR&gt;这就是set的替换字符的很好的功能!先讲到这&lt;BR&gt;&lt;BR&gt;%PATH:~10,5%&amp;nbsp;&amp;nbsp;这个什么意思,看例子:&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;set var=%a:~1,2%&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;执行后,我们会发现只显示了"bs"两个字母,我们的变量%a%的值不是为bbs.verybat.cn吗&lt;BR&gt;怎么只显示了第2个字母和第3个字母"bs",分析一结果我们就可以很容易看出&lt;BR&gt;%PATH:~10,5%就是显示变量PATH里指定几位的值!&lt;BR&gt;分析set var=%a:~1,2%&lt;BR&gt;&amp;nbsp;&amp;nbsp;set命令 var变量值&amp;nbsp;&amp;nbsp;a要进行字符操作的变量 "1"从变量"a"第几位开始显示 "2"显示几位&lt;BR&gt;和起来就是把变量a的值从第一位开始,把后两位赋予给变量var&lt;BR&gt;就样因该明白了吧~&lt;BR&gt;&lt;BR&gt;其他两种语法&lt;BR&gt;%PATH:~-10%&lt;BR&gt;%PATH:~0,-2%&lt;BR&gt;他们也是显示指定变量指定几位的值得的意思&lt;BR&gt;&lt;BR&gt;%PATH:~-10% 例子&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;set var=%a:~-3%&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;这个就是把变量a倒数3位的值给变量VAR&lt;BR&gt;&lt;BR&gt;当然我们也可以改成这样&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;set var=%a:~3%&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;这个就是把变量a的从第3位开始后面全部的值给变量VAR&lt;BR&gt;&lt;BR&gt;%PATH:~0,-2%&amp;nbsp;&amp;nbsp;例子&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;set var=%a:~0,-3%&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;执行后,我们发现显示的是"bbs.verybat",少了".cn"&lt;BR&gt;从结果分析,很容易分析出,这是把变量a的值从0位开始,&lt;BR&gt;到倒数第三位之间的值全部赋予给var&lt;BR&gt;&lt;BR&gt;如果改成这样&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;set a=bbs.verybat.cn&lt;BR&gt;set var=%a:~2,-3%&lt;BR&gt;echo %var%&lt;BR&gt;pause&lt;BR&gt;那么他就是显示从第2位开始减去倒数三位字符的值,并赋予给变量var&lt;BR&gt;&lt;BR&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期一, 07 四月 2008 20:18:21 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2279257.html</guid>
      <dc:date>2008-04-07T20:18:21Z</dc:date>
    </item>
    <item>
      <title>for命令详解</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2279256.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;FOR这条命令基本上都被用来处理文本,我们这次除了要说他处理文本的作用外还要讲他的其他一些好用的功能!&lt;BR&gt;&lt;BR&gt;看看他的基本格式(这里我引用的是批处理中的格式,直接在命令行只需要一个%号)&lt;BR&gt;FOR 参数 %%变量名 IN (相关文件或命令) DO 执行的命令&lt;BR&gt;&lt;BR&gt;参数:FOR有4个参数 /d&amp;nbsp; &amp;nbsp;/l&amp;nbsp; &amp;nbsp;/r&amp;nbsp; &amp;nbsp;/f&amp;nbsp; &amp;nbsp;他们的作用我在下面用例子解释&lt;BR&gt;%%变量名 :这个变量名可以是小写a-z或者大写A-Z,他们区分大小写哦~&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;FOR会把每个读取到的值给他!&lt;BR&gt;IN:命令的格式,照写就是了!&lt;BR&gt;(相关文件或命令) :FOR要把什么东西读取然后赋值给变量,不懂的话看下面的例子&lt;BR&gt;do:命令的格式,照写就是了!&lt;BR&gt;执行的命令:对每个变量的值要执行什么操作就写在这.&lt;BR&gt;&lt;BR&gt;看不懂我的这些说明,可以在CMD输入for /?看系统提供的帮助!我这里也给出来吧,大家对照&lt;BR&gt;FOR %%variable IN (set) DO command [command-parameters]&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;%%variable&amp;nbsp;&amp;nbsp;指定一个单一字母可替换的参数。&lt;BR&gt;&amp;nbsp;&amp;nbsp;(set)&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;指定一个或一组文件。可以使用通配符。&lt;BR&gt;&amp;nbsp;&amp;nbsp;command&amp;nbsp; &amp;nbsp; 指定对每个文件执行的命令。&lt;BR&gt;&amp;nbsp;&amp;nbsp;command-parameters&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 为特定命令指定参数或命令行开关。&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;现在开始讲每个参数的意思&lt;BR&gt;&lt;BR&gt;/d &lt;BR&gt;仅为目录 &lt;BR&gt;如果 Set (也就是我上面写的 "相关文件或命令") 包含通配符（* 和 ?），将对与 Set 相匹配的每个目录（而不是指定目录中的文件组）执行指定的 Command。&lt;BR&gt;&lt;BR&gt;这个参数其实我也没弄太懂...有错误希望各位纠正!&lt;BR&gt;系统帮助的格式:FOR /D %%variable IN (set) DO command&lt;BR&gt;他主要用于目录搜索,不会搜索文件,看这样的例子&lt;BR&gt;@echo off&lt;BR&gt;for /d %%i in (*) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;把他保存放在C盘根目录执行,就会把C盘目录下的全部目录名字打印出来,而文件名字一个也不显示!&lt;BR&gt;在来一个,比如我们要把当前路径下文件夹的名字只有1-3个字母的打出来&lt;BR&gt;@echo off&lt;BR&gt;for /d %%i in (???) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;这样的话如果你当前目录下有目录名字只有1-3个字母的,就会显示出来,没有就不显示了&lt;BR&gt;&lt;BR&gt;这里解释下*号和?号的作用,*号表示任意N个字符,而?号只表示任意一个字符&lt;BR&gt;&lt;BR&gt;知道作用了,给大家个思考题目!&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;for /d %%i in (window?) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;保存到C盘下执行,会显示什么呢?自己看吧!&lt;BR&gt;/D参数只能显示当前目录下的目录名字,这个大家要注意!&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;/R&lt;BR&gt;递归 &lt;BR&gt;进入根目录树 [Drive:]Path，在树的每个目录中执行 for 语句。如果在 /R 后没有指定目录，则认为是当前目录。如果 Set 只是一个句点 (.)，则只枚举目录树。&lt;BR&gt;系统帮助的格式:FOR /R [[drive:]path] %%variable IN (set) DO command&lt;BR&gt;&lt;BR&gt;上面我们知道,/D只能显示当前路径下的目录名字,那么现在这个/R也是和目录有关,他能干嘛呢?放心他比/D强大多了!&lt;BR&gt;他可以把当前或者你指定路径下的文件名字全部读取,注意是文件名字,有什么用看例子!&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;for /r c:\ %%i in (*.exe) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;咋们把这个BAT保存到D盘随便哪里然后执行,我会就会看到,他把C盘根目录,和每个目录的子目录下面全部的EXE文件都列出来了!!!!&lt;BR&gt;&lt;BR&gt;再来一个&lt;BR&gt;@echo off&lt;BR&gt;for /r %%i in (*.exe) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;参数不一样了吧!这个命令前面没加那个C:\也就是搜索路径,这样他就会以当前目录为搜索路径,比如你这个BAT你把他防灾d:\test目录下执行,那么他就会把D:\test目录和他下面的子目录的全部EXE文件列出来!!!&lt;BR&gt;&lt;BR&gt;这个参数大家因该理解了吧!还是满好玩的命令!&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;/L&lt;BR&gt;迭代数值范围 &lt;BR&gt;使用迭代变量设置起始值 (Start#)，然后逐步执行一组范围的值，直到该值超过所设置的终止值 (End#)。/L 将通过对 Start# 与 End# 进行比较来执行迭代变量。如果 Start# 小于 End#，就会执行该命令。如果迭代变量超过 End#，则命令解释程序退出此循环。还可以使用负的 Step# 以递减数值的方式逐步执行此范围内的值。例如，(1,1,5) 生成序列 1 2 3 4 5，而 (5,-1,1) 则生成序列 (5 4 3 2 1)。语法是： &lt;BR&gt;&lt;BR&gt;系统帮助的格式:for /L %% Variable in (Start#,Step#,End#) do Command &lt;BR&gt;&lt;BR&gt;看着这说明有点晕吧!咋们看例子就不晕了!&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;for /l %%i in (1,1,5) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;保存执行看效果,他会打印从1 2 3 4 5&amp;nbsp;&amp;nbsp;这样5个数字&lt;BR&gt;(1,1,5)这个参数也就是表示从1开始每次加1直到5终止!&lt;BR&gt;&lt;BR&gt;大会晕,就打印个数字有P用...好的满足大家,看这个例子&lt;BR&gt;@echo off&lt;BR&gt;for /l %%i in (1,1,5) do start cmd&lt;BR&gt;pause&lt;BR&gt;执行后是不是吓了一跳,怎么多了5个CMD窗口,呵呵!如果把那个 (1,1,5)改成 (1,1,65535)会有什么结果,我先告诉大家,会打开65535个CMD窗口....这么多你不死机算你强!&lt;BR&gt;当然我们也可以把那个start cmd改成md %%i 这样就会建立指定个目录了!!!名字为1-65535&lt;BR&gt;&lt;BR&gt;看完这个被我赋予破坏性质的参数后,我们来看最后一个参数&lt;BR&gt;&lt;BR&gt;/f&lt;BR&gt;&lt;BR&gt;\迭代及文件解析 &lt;BR&gt;使用文件解析来处理命令输出、字符串及文件内容。使用迭代变量定义要检查的内容或字符串，并使用各种 ParsingKeywords 选项进一步修改解析方式。使用 ParsingKeywords 令牌选项指定哪些令牌应该作为迭代变量传递。请注意：在没有使用令牌选项时，/F 将只检查第一个令牌。&lt;BR&gt;文件解析过程包括读取输出、字符串或文件内容，将其分成独立的文本行以及再将每行解析成零个或更多个令牌。然后通过设置为令牌的迭代变量值，调用 for 循环。默认情况下，/F 传递每个文件每一行的第一个空白分隔符号。跳过空行。&lt;BR&gt;&lt;BR&gt;系统帮助的格式:&lt;BR&gt;for /F "ParsingKeywords" %% Variable in (FileNameSet) do Command &lt;BR&gt;&lt;BR&gt;有没有发现这个参数说明比上面几个都多...没办法,人们用FOR命令主要也就是用/f参数,FOR的主场啊!大家得好好看!&lt;BR&gt;&lt;BR&gt;先来解释下那个多出来的"ParsingKeywords" &lt;BR&gt;他表示4个参数&lt;BR&gt;eol=c&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;- 指一个行注释字符的结尾(就一个)&lt;BR&gt;skip=n&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; - 指在文件开始时忽略的行数。&lt;BR&gt;delims=xxx&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;- 指分隔符集。这个替换了空格和跳格键的&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 默认分隔符集。&lt;BR&gt;tokens=x,y,m-n&amp;nbsp;&amp;nbsp;- 指每行的哪一个符号被传递到每个迭代&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 的 for 本身。这会导致额外变量名称的分配。m-n&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 格式为一个范围。通过 nth 符号指定 mth。如果&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 符号字符串中的最后一个字符星号，&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 那么额外的变量将在最后一个符号解析之后&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 分配并接受行的保留文本。&lt;BR&gt;usebackq&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;- 指定新语法已在下类情况中使用:&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 在作为命令执行一个后引号的字符串并且一个单&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 引号字符为文字字符串命令并允许在 filenameset&lt;BR&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 中使用双引号扩起文件名称。&lt;BR&gt;&lt;BR&gt;先别晕了!我这就举个例子帮助大家来理解这些参数!&lt;BR&gt;usebackq这个参数不用理解了,系统默认会给我们加上!&lt;BR&gt;&lt;BR&gt;为了能使用这个例子,我们先新建一个文本文件,在里面打上这些内容保存为test.txt:&lt;BR&gt;&lt;BR&gt;;郁闷啊!&lt;BR&gt;您好! 欢迎来到, 非常批处理&lt;BR&gt;我们的网站 bbs.verybat.cn&lt;BR&gt;完毕!&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;FOR /F "eol=; tokens=1 delims= " %%i in (test.txt) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;我们把这个BAT保存到和你的test.txt相同的目录下面然后执行&lt;BR&gt;我们会看到屏幕上会显示&lt;BR&gt;&lt;BR&gt;您好!&lt;BR&gt;我们的网站&lt;BR&gt;完毕!&lt;BR&gt;&lt;BR&gt;为什么会这样?我来解释&lt;BR&gt;这个命令会读取在当前目录下名为test.txt文件中的内容,将每一行的内容赋值给变量%%i,忽略掉以;号开头的行,并且以空格做为分隔符号,打印每行以空格做分隔符号的第一列&lt;BR&gt;&lt;BR&gt;结果就是这样了!!&lt;BR&gt;如果改成&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;当然我们想要把全部文件内容直接打印出来就可以这样&lt;BR&gt;@echo off&lt;BR&gt;FOR /F "delims=" %%i in (test.txt) do @echo %%i&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;另外/F参数还可以以输出命令的结果看这个例子&lt;BR&gt;&lt;BR&gt;@echo off&lt;BR&gt;FOR /F "delims=" %%i in ('net user') do @echo %%i&lt;BR&gt;pause&lt;BR&gt;&lt;BR&gt;这样你本机全部帐号名字就出来了把扩号内的内容用两个单引号引起来就表示那个当命令执行,FOR会返回命令的每行结果,加那个"delims=" 是为了让我空格的行能整行显示出来,不加就只显示空格左边一列!&lt;BR&gt;&lt;BR&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期一, 07 四月 2008 20:15:28 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2279256.html</guid>
      <dc:date>2008-04-07T20:15:28Z</dc:date>
    </item>
    <item>
      <title>系统自带的最不起眼但又最强的杀毒工具</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2279168.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;Windows系统集成了无数的工具，它们各司其职，满足用户不同的应用需求。其实这些工具“多才多艺”，如果你有足够的想象力并且善于挖掘，你会发现它们除了本行之外还可以帮我们杀毒。不信?你看吧! &lt;BR&gt;&lt;BR&gt;　　一、任务管理器给病毒背后一刀&lt;BR&gt;&lt;BR&gt;　　&lt;BR&gt;&lt;BR&gt;　　Windows任务管理器是大家对进程进行管理的主要工具，在它的“进程”选项卡中能查看当前系统进程信息。在默认设置下，一般只能看到映像名称、用户名、CPU占用、内存使用等几项，而更多如I/O读写、虚拟内存大小等信息却被隐藏了起来。可别小看了这些被隐藏的信息，当系统出现莫名其妙的故障时，没准就能从它们中间找出突破口。&lt;BR&gt;&lt;BR&gt;　　1.查杀会自动消失的双进程木马&lt;BR&gt;&lt;BR&gt;　　前段时间朋友的电脑中了某木马，通过任务管理器查出该木马进程为“system.exe”，终止它后再刷新，它又会复活。进入安全模式把c:\windows\system32\system.exe删除，重启后它又会重新加载，怎么也无法彻底清除它。从此现象来看，朋友中的应该是双进程木马。这种木马有监护进程，会定时进行扫描，一旦发现被监护的进程遭到查杀就会复活它。而且现在很多双进程木马互为监视，互相复活。因此查杀的关键是找到这“互相依靠”的两个木马文件。借助任务管理器的PID标识可以找到木马进程。&lt;BR&gt;&lt;BR&gt;　　调出Windows任务管理器，首先在“查看→选择列”中勾选“PID(进程标识符)”，这样返回任务管理器窗口后可以看到每一个进程的PID标识。这样当我们终止一个进程，它再生后通过PID标识就可以找到再生它的父进程。启动命令提示符窗口，执行“taskkill /im system.exe /f”命令。刷新一下电脑后重新输入上述命令如图1，可以看到这次终止的system.exe进程的PID为1536，它属于PID为676的某个进程。也就是说PID为1536的system.exe进程是由PID为676的进程创建的。返回任务管理器，通过查询进程PID得知它就是“internet.exe”进程进程。(如图)&lt;BR&gt;&lt;B&gt;&lt;/B&gt;&lt;BR&gt;&lt;IMG onclick="if(this.width&gt;=700) window.open('http://www.hxhack.com/bbs/attachment/21_2_61f861467e48cbc.jpg');" src="http://www.hxhack.com/bbs/attachment/21_2_61f861467e48cbc.jpg" onload="if(this.width&gt;'700')this.width='700';if(this.height&gt;'700')this.height='700';" border=0&gt;&lt;BR&gt;　找到了元凶就好办了，现在重新启动系统进入安全模式，使用搜索功能找到木马文件c:\windows\internet.exe ，然后将它们删除即可。前面无法删除system.exe，主要是由于没有找到internet.exe(且没有删除其启动键值)，导致重新进入系统后internet.exe复活木马。&lt;BR&gt;&lt;BR&gt;　　2.揪出狂写硬盘的P2P程序&lt;BR&gt;&lt;BR&gt;　　单位一电脑一开机上网就发现硬盘灯一直闪个不停，硬盘狂旋转。显然是本机有什么程序正在进行数据的读取，但是反复杀毒也没发现病毒、木马等恶意程序。&lt;BR&gt;&lt;BR&gt;　　打开该电脑并上网，按Ctrl+Alt+Del键启动了任务管理器，切换到“进程”选项卡，点击菜单命令“查看→选择列”，同时勾选上“I/O写入”和“I/O写入字节”两项。确定后返回任务管理器，发现一个陌生的进程hidel.exe，虽然它占用的CPU和内存并不是特别大，但是I/O的写入量却大得惊人，看来就是它在捣鬼了，赶紧右击它并选择“结束进程”终止，果然硬盘读写恢复正常了。&lt;BR&gt;&lt;BR&gt;　　二、系统备份工具杀毒于无形&lt;BR&gt;&lt;BR&gt;　　笔者曾遭遇一个无法删除的病毒“C：\Program Files\Common Files\PCSuite\rasdf.exe”，同时也无法复制这个文件，如何清除它。笔者通过系统备份工具清除了该病毒，操作过程如下：&lt;BR&gt;&lt;BR&gt;　　第一步：单击“开始→所有程序→附件→系统工具→备份”，打开备份或还原向导窗口，备份项目选择“让我选择要备份的内容”，定位到“C:\Program Files\Common Files\PCSuite”。&lt;BR&gt;&lt;BR&gt;　　第二步：继续执行备份向导操作，将备份文件保存为“g:\virus.bkf”，备份选项勾选“使用卷阴影复制”，剩余操作按默认设置完成备份。&lt;BR&gt;&lt;BR&gt;　　第三步：双击“g:\virus.bak”，打开备份或还原向导，把备份还原到“g:\virus”。接着打开“g:\virus”，使用记事本打开病毒文件“rasdf.exe”，然后随便删除其中几行代码并保存，这样病毒就被我们使用记事本破坏了(它再也无法运行)。&lt;BR&gt;&lt;BR&gt;　　第四步：操作同上，重新制作“k:\virus”的备份为“k:\virus1.bkf”。然后启动还原向导，还原位置选择“C：\Program Files\Common Files\PCSuite\”，还原选项选择“替换现有文件”。这样，虽然当前病毒正在运行，但备份组件仍然可以使用坏的病毒文件替换当前病毒。还原完成后，系统提示重新启动，重启后病毒就不会启动了(因为它已被记事本破坏)。&lt;BR&gt;&lt;BR&gt;　　三、记事本借刀杀人&lt;BR&gt;&lt;BR&gt;　　1.双进程木马的查杀&lt;BR&gt;&lt;BR&gt;　　现在，越来越多的木马采用双进程守护技术保护自己，就是两个拥有同样功能的代码程序，不断地检测对方是否已经被别人终止，如果发现对方已经被终止了，那么又开始创建对方，这给我们的查杀带来很大的困难。不过，此类木马也有“软肋”，它只通过进程列表进程名称来判断被守护进程是否存在。这样，我们只要用记事本程序来替代木马进程，就可以达到“欺骗”守护进程的目的。&lt;BR&gt;&lt;BR&gt;　　下面以某变种木马的查杀为例。中招该木马后，木马的“internet.exe”和“systemtray.exe”两个进程会互相监视。当然，我们中招的时候大多不知道木马具体的监护进程。不过，通过进程名称可以知道，“systemtray.exe”是异常的进程，因为系统正常进程中没有该进程。下面使用替换方法来查杀该木马。&lt;BR&gt;&lt;BR&gt;　　第一步：单击“开始→运行”，输入“Msinfo32”打开系统信息窗口，展开“系统摘要→软件环境→正在运行任务”，这里可以看到“systemtray.exe”路径在“C:\Windows\System32”下。&lt;BR&gt;&lt;BR&gt;　　第二步：打开“C:\Windows\System32”，复制记事本程序“notepad.exe”到“D:\” ，同时重命名为“systemtray.exe”。&lt;BR&gt;&lt;BR&gt;　　第三步：打开记事本程序，输入下列代码，保存为“shadu.bat”，放置在桌面(括号为注释，无须输入)：&lt;BR&gt;&lt;BR&gt;　　@echo off&lt;BR&gt;&lt;BR&gt;　　Taskkill /f /im systemtray.exe (使用taskkill命令强行终止“systemtray.exe”进程)&lt;BR&gt;&lt;BR&gt;　　Delete C:\Windows\System32\systemtray.exe (删除病毒文件)&lt;BR&gt;&lt;BR&gt;　　Copy d:\systemtray.exe C:\Windows\System32\(替换病毒文件)&lt;BR&gt;&lt;BR&gt;　　第四步：现在只要在桌面运行“shadu.bat”，系统会将“systemtray.exe”进程终止并删除，同时把改名的记事本程序复制到系统目录。这样，守护进程会“误以为”被守护进程还存在，它会立刻启动一个记事本程序。&lt;BR&gt;&lt;BR&gt;　　第五步：接下来我们只要找出监视进程并删除即可，在命令提示符输入:&lt;BR&gt;&lt;BR&gt;　　“taskkill /f /im systemtray.exe ”，将守护进程再生的“systemtray.exe”终止，可以看到“systemtray.exe”进程是由“PID 3288的进程”创建的，打开任务管理器可以看到“PID 3288的进程”为“internet.exe”，这就是再生进程的“元凶”。&lt;BR&gt;&lt;BR&gt;　　第六步：按照第一步方式，打开系统信息窗口可以看到“internet.exe”也位于系统目录，终止“internet.exe”进程并进入系统目录把上述两个文件删除即可。&lt;BR&gt;&lt;BR&gt;　　2.使病毒失效并删除&lt;BR&gt;&lt;BR&gt;　　大家知道，文件都是由编码组成的，记事本程序理论上可以打开任意文件(只不过有些会显示为乱码)。我们可以将病毒打开方式关联到记事本，使之启动后变成由记事本打开，失去作恶的功能。比如，一些顽固病毒常常会在注册表的“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run”等启动位置生成难以删除的键值，达到恶意启动的目的。下面使用记事本来“废”掉病毒的生命力。&lt;BR&gt;&lt;BR&gt;　　第一步：启动命令提示符，输入“ftype exefile=notepad.exe %1”，把所有EXE程序打开方式关联到记事本程序，重启系统后我们会发现桌面自动启动好几个程序，这里包括系统正常的程序如输入法、音量调整程序等，当然也包括恶意启动的流氓程序，不过现在都被记事本打开了。&lt;BR&gt;&lt;BR&gt;　　第二步：根据记事本窗口标题找到病毒程序，比如上例的systemtray.exe程序，找到这个记事本窗口后，单击“文件→另存为”，我们就可以看到病毒具体路径在“C:\Windows\System32”下。现在关掉记事本窗口，按上述路径提示进入系统目录删除病毒即可。&lt;BR&gt;&lt;BR&gt;　　第三步：删除病毒后就可以删除病毒启动键值了，接着重启电脑，按住F8，然后在安全模式菜单选择“带命令提示的安全模式”，进入系统后会自动打开命令提示符。输入“ftype exefile="%1"%*”恢复exe文件打开方式即可。 &lt;BR&gt;&lt;BR&gt;　　四、注册表映像劫持让病毒没脾气&lt;BR&gt;&lt;BR&gt;　　现在病毒都会采用IFO的技术，通俗的讲法是映像劫持，利用的是注册表中的如下键值&lt;BR&gt;&lt;BR&gt;　　HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options位置来改变程序调用的，而病毒却利用此处将正常的杀毒软件给偷换成病毒程序。恰恰相反，让我们自己可以利用此处欺瞒病毒木马，让它实效。可谓，瞒天过海，还治其人。&lt;BR&gt;&lt;BR&gt;　　下面我们以屏蔽某未知病毒KAVSVC.EXE为例，操作方法如下：&lt;BR&gt;&lt;BR&gt;　　第一步：先建立以下一文本文件，输入以下内容，另存为1.reg&lt;BR&gt;&lt;BR&gt;　　Windows Registry Editor Version 5.00&lt;BR&gt;&lt;BR&gt;　　[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\KAVSVC.EXE]&lt;BR&gt;&lt;BR&gt;　　"Debugger"="d:\\1.exe"&lt;BR&gt;&lt;BR&gt;　　[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\KAVSVC.EXE]&lt;BR&gt;&lt;BR&gt;　　"Debugger"="d:\\1.exe"&lt;BR&gt;&lt;BR&gt;　　(注：第一行代码下有空行。)&lt;BR&gt;&lt;BR&gt;　　第二步：双击导入该reg文件后，确定。&lt;BR&gt;&lt;BR&gt;　　第三步：点“开始→运行”后，输入KAVSVC.EXE。&lt;BR&gt;&lt;BR&gt;　　提示：1.exe可以是任意无用的文件，是我们随意创建一个文本文件后将后缀名.txt改为.exe的，&lt;BR&gt;&lt;BR&gt;　　总结：当我们饱受病毒木马的折磨，在杀毒软件无能为力或者感觉“杀鸡焉用宰牛刀”时，不妨运用系统工具进行病毒木马的查杀，说不定会起到意想不到的效果。&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期一, 07 四月 2008 18:04:21 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2279168.html</guid>
      <dc:date>2008-04-07T18:04:21Z</dc:date>
    </item>
    <item>
      <title>ITE IT8212 阵列BIOS的有效设置</title>
      <link>http://blog.china.com:80/u/061210/20328/200804/2263733.html</link>
      <description>&lt;![CDATA[ &lt;DIV&gt;&#xD;
&lt;DIV class=i&gt;it8212f raid控制器设置为有效提供建立的功能，删除和重建队列。开启系统等待画面的出现。按“ctrl+f”或者“ctrl+e”键进入选择设备为有效后按“esc”键，然后直接开机。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/115.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在有效设置的主目录下有5个选项。请按1～5进入子菜单或者按“esc”键退出有效设置。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/116.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果你不熟悉设置阵列，请直接使用auto configuration自动建立一个新的队列。你能使用define raid和delete raid手动建立或者删除队列。你同样可以使用rebuild raid选项帮助你重新建立镜像（raid 0或者raid0+1）队列。除此以外，你能使用raid cardconfiguration控制器管理，每个硬盘由it8212f raid 控制器设置。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1．自动设置&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在main menu单击“1”进入auto configuration。你能够用箭头→and←和“space”键选择你的选项。选择后，你能够按“ctrl+y”储存你的设置。按“esc”键返回到main menu完整的，支持5种类型设置：&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/117.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/118.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.定义raid&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在main menu选“2”项你能够进入define raid menu。请使用↑和↓键选择你想定义的号码的队列；用“space”键指定你想启动的磁盘。单击“enter”键选择和进入define raid sub-menu来建立你的队列。如果你想退出或者返回main menu，按“esc”键。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/119.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当你raid还没有分配时，你会看到“-----”的格式。stripe“array made”显示raid的类别（stripe,mirror,stripe+mirror 或者jbod）分配队列。stripe“drive no”显示硬盘在队列中的的号码。stripe“size”显示队列的全体容量。如果是一个符号显示在“size”前，这个容量将是超过10亿个字节。stripe“status”显示队列的情况。你将会看到“functional”队列是可操作和“non-functional”队列丢失它的功能。请突出队列的号码，你用“enter”来定义。然后在raid的子菜单中将出现可定义的队列分配。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 定义raid 子菜单&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在define raid menu突出你想定义队列，单击“enter”键然后你会进入“define raid sub-menu”&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/120.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 板块大小的选项&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 你能够选择条形块的大小修正stripe为1k到64k（raid 0）或者+mirror（raid 0+1）队列。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 驱动器分配选项&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 突出你想分配的磁盘和调整分配，确定“y”要压着“space”条形键。d0表示为一个主磁盘，d1表示为一个副磁盘。stripe“drive name”显示你该磁盘型号的名称。stripe “size”显示每一个磁盘的容量。当size前显示一个符号时，表示容量的单位是十亿个字节。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; raid的局限性在下面显示。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 raid 0(stripe)：&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这个模式没有任何特别的局限性。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 raid 1（mirror）&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 两个磁盘组成一个raid 1队列只能使用相同主磁盘或从磁盘。例如，主通道（pri）主磁盘（d0）和次通道（sec）主磁盘（d0）能组成一个mirror 队列；主通道（pri）副磁盘（d1）和次通道（sec）副磁盘（d1）能组成一个mirror 队列。但主通道的主磁盘和主通道的次磁盘是不能组成阵列的。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 raid 0+1(stripe+mirror)&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一个raid 0+1阵列必须使用四个磁盘驱动器。raid 0+1就是是执行一个分割的raid 0队列。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 jbod(span)&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这个模式没有任何特别的局限性。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5 normal&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果一个磁盘不是包含在一个队列（column “assignment”在drive assignment可以看到“free”），这个磁盘驱动器是当作一个普通的磁盘。普通磁盘驱动器的存在有时将会影响到使用者的队列。如果pri/d0, pri/d1, sec/d0 or sec/d1磁盘驱动器是一个普通驱动器，队列0，1，2或者3分别安装到队列。无论如何，你都不会涉及到有关的限制。如果出现冲突，队列是不会自动调整过来。在完成了队列设置以后，返回define raid menu那么你会发现队列没有变化过。这是因为普通磁盘驱动器存在是不会引起队列的自动修整。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当你按住“ctrl-y”储存你更改。在下面窗口将会出现选择启动的是否直接读取新建队列。如果你的raid模式既然不是mirror 又不是stripe + mirror，这个队列的设置就完成了，而你能够按“esc”键返回define raid menu.&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/121.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果你的raid模式选择了mirror or stripe + mirror 和你不选择队列窗口将会询问你是否想重建以队列。如果你回答“y”，rebuild raid menu 将会出现。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/122.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果你选择不重建队列，it8212f raid控制器不能适当的读取数据因为数据在mirrored 磁盘驱动器是不一致的。因此窗口会出现。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/123.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 突出的你选择和按“enter”磁盘读取设置完成以后可以自动返回define raid sub-menu目录。队列设置完成。你可以按“esc”返回define raid menu。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3．删除raid&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在main menu选“3”项你能够进入delete raid menu。选择你要删除的队列，按“del”进入delete raid sub-menu设置&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 删除raid的子选项&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当你选择要delete的队列delete raid menu和按“del”键，会出现delete raid sub-menu。请按“crtl-y”确认要删除的队列或者按任何其他键中断队列删除操作。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/124.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果你按“ctrl-y”确认删除该队列，出现窗口。你能够选择清除或者保留导入队列的部分。你完成选择后，delete raid menu将自动返回。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4．重建raid&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在main menu按“4”选择rebuild raid menu。突出不同的队列，按“enter”选择一个队列和进入下一个重建磁盘选择屏幕。如果队列raid模式想选择非mirror也非stripe + mirror,按“enter”来实现。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/125.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 一个窗口将会弹出让你选择监视重建的全过程到它完全结束为止，或者选择摆到后台运行。你能许可设定为有效和直接导入，如果你选择后台重建和继续重建。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果你选择监测重建整过程，一个监控窗口会出现。当你完成后会返回重建raid的菜单。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5．raid卡的配置&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在main menu按“5”，然后出现raid卡配置的菜单。你能使用→和←“space”条形键允许或者禁止自动重建选项。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;IMG src="http://guide.it168.com/pic/13866/126.jpg" border=0&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当自动重建为允许时，it8212f raid控制器能自动重建你的镜像队列。当自动重建为禁止时，你必须在重建raid菜单中重建你的镜像队列。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在你的raid卡资源选项中，你在it8212f raid能看到pci 槽中断和i/o端口地址。“array no”显示磁盘驱动器队列号码。如果一个磁盘驱动器没委派到队列，它将显示为空闲。一个空闲的磁盘驱动器是一个普通盘。“mode”显示磁盘驱动器的数据转移模式。“u”为ultra dma（udma）模式，“d”为multiword dma(dma)模式和“p”为pio模式。&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/DIV&gt;&lt;/DIV&gt;]]&gt;</description>
      <pubDate>星期六, 05 四月 2008 22:54:41 GMT</pubDate>
      <guid>http://blog.china.com:80/u/061210/20328/200804/2263733.html</guid>
      <dc:date>2008-04-05T22:54:41Z</dc:date>
    </item>
  </channel>
</rss>

