<?xml version="1.0" encoding="gb2312"?>

<!-- RSS generated by oioj.net on 4/16/2004 ; 感谢LeXRus提供 RSS 2.0 文档; 此文件可自由使用，但请保留此行信息 --> 
<!-- Source download URL: http://blogger.org.cn/blog/rss2.asp       -->
<rss version="2.0">

<channel>
<title>jdilt的博客</title>
<link>http://blogger.org.cn/blog/blog.asp?name=jdilt</link>
<description>jdilt的博客</description>
<copyright>blogger.org.cn</copyright>
<generator>W3CHINA Blog</generator>
<webMaster>webmaster@blogger.org.cn</webMaster>
<item>
<title><![CDATA[键盘快捷键--没有鼠标一样行]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=28052</link>
<author>jdilt</author>
<pubDate>2007/9/13 9:28:32</pubDate>
<description><![CDATA[<SPAN style="FONT-SIZE: 10pt"><SPAN style="COLOR: #800080"><SPAN style="FONT-SIZE: 10pt">一、常见用法： </SPAN></SPAN><BR><SPAN style="COLOR: #000080"><BR>F1 显示当前程序或者windows的帮助内容。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; F2 当你选中一个文件的话，这意味着“重命名” <BR><BR>F3 当你在桌面上的时候是打开“查找：所有文件” 对话框&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F10或ALT 激活当前程序的菜单栏 <BR><BR>windows键或CTRL+ESC 打开开始菜单&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTRL+ALT+删除 在win9x中打开关闭程序对话框 <BR><BR>SHIFT+删除 删除被选择的选择项目,如果是文件,将被直接删除而不是放入回收站 <BR><BR>CTRL+N 新建一个新的文件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;CTRL+O 打开“打开文件”对话框 <BR><BR>CTRL+P 打开“打印”对话框&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CTRL+S 保存当前操作的文件 <BR><BR>CTRL+X 剪切被选择的项目到剪贴板&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CTRL+INSERT 或 CTRL+C 复制被选择的项目到剪贴板 <BR><BR>SHIFT+INSERT 或 CTRL+V 粘贴剪贴板中的内容到当前位置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ALT+BACKSPACE 或 CTRL+Z 撤销上一步的操作 <BR><BR>ALT+SHIFT+BACKSPACE 重做上一步被撤销的操作&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows键+M 最小化所有被打开的窗口。 <BR><BR>Windows键+CTRL+M 重新将恢复上一项操作前窗口的大小和位置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows键+E 打开资源管理器 <BR><BR>Windows键+F 打开“查找：所有文件”对话框&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows键+R 打开“运行”对话框 <BR><BR>Windows键+BREAK 打开“系统属性”对话框&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows键+CTRL+F 打开“查找：计算机”对话框 <BR><BR>SHIFT+F10或鼠标右击 打开当前活动项目的快捷菜单 <BR><BR>SHIFT 在放入CD的时候按下不放，可以跳过自动播放CD。在打开word的时候按下不放,可以跳过自启动的宏 <BR><BR>ALT+F4 关闭当前应用程序&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;ALT+SPACEBAR 打开程序最左上角的菜单 <BR><BR>ALT+TAB 切换当前程序&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ALT+ESC 切换当前程序 <BR><BR>ALT+ENTER 将windows下运行的MSDOS窗口在窗口和全屏幕状态间切换 <BR><BR>PRINT SCREEN 将当前屏幕以图象方式拷贝到剪贴板&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ALT+PRINT SCREEN 将当前活动程序窗口以图象方式拷贝到剪贴板 <BR>CTRL+F4 关闭当前应用程序中的当前文本（如word中）&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp; <BR>CTRL+F6 切换到当前应用程序中的下一个文本（加shift 可以跳到前一个窗口）</SPAN> <BR><BR><SPAN style="COLOR: #800080">在IE中： <BR></SPAN><BR><SPAN style="COLOR: #000080">ALT+RIGHT ARROW 显示前一页（前进键）&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ALT+LEFT ARROW 显示后一页（后退键） <BR><BR>CTRL+TAB 在页面上的各框架中切换（加shift反向）&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F5 刷新&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CTRL+F5 强行刷新 <BR><BR>执行菜单上相应的命令 ALT+菜单上带下划线的字母&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 关闭多文档界面程序中的当前窗口 CTRL+ F4 <BR><BR>关闭当前窗口或退出程序 ALT+ F4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 显示当前窗口的系统菜单 ALT+空格键 <BR><BR>显示所选项目的快捷菜单 SHIFT+ F10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 显示“开始”菜单 CTRL+ ESC&nbsp;<BR><BR>&nbsp;撤消 CTRL+ Z </SPAN><BR><BR><SPAN style="COLOR: #800080">二、使用“Windows资源管理器”的快捷键 目的快捷键 <BR></SPAN><BR><SPAN style="COLOR: #000080">如果当前选择展开了,要折叠或者选择父文件夹左箭头折叠所选的文件夹 NUM LOCK+负号(-) <BR><BR>如果当前选择折叠了，要展开或者选择第一个子文件夹右箭头展开当前选择下的所有文件夹 NUM LOCK+* 展开所选的文件夹 NUM LOCK+加号(+) </SPAN><BR><BR><SPAN style="COLOR: #800080">三、使用 WINDOWS键</SPAN> <BR><BR><SPAN style="COLOR: #000080">可以使用 Microsoft自然键盘或含有 Windows徽标键的其他任何兼容键盘的以下快捷键。<BR><BR>在任务栏上的按钮间循环 WINDOWS+ TAB <BR><BR>显示“查找：所有文件” WINDOWS+F&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 显示“查找：计算机” CTRL+WINDOWS+F&nbsp;<BR><BR>显示“运行”命令 WINDOWS+ R&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 显示“Windows资源管理器” WINDOWS+ E&nbsp;<BR><BR>显示“开始”菜单 WINDOWS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;显示“系统属性”对话框 WINDOWS+BREAK&nbsp;<BR><BR>&nbsp;最小化或还原所有窗口 WINDOWS+ D&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;撤消最小化所有窗口 SHIFT+ WINDOWS+ M <BR></SPAN><BR><SPAN style="COLOR: #800080">四、使用“我的电脑”和“Windows资源管理器”的快捷键 </SPAN><BR><BR><SPAN style="COLOR: #000080">关闭所选文件夹及其所有父文件夹按住 SHIFT键再单击“关闭按钮（仅适用于“我的电脑”） <BR><BR>向后移动到上一个视图 ALT+左箭头 向前移动到上一个视图 ALT+右箭头 <BR><BR>查看上一级文件夹 BACKSPACE </SPAN><BR><BR><SPAN style="COLOR: #800080">五、使用对话框中的快捷键</SPAN>&nbsp;<BR><BR><SPAN style="COLOR: #000080">如果当前控件是个按钮，要单击该按钮或者如果当前控件是个复选框,要选择或清除该复选框或者 <BR><BR>如果当前控件是个选项按钮,要单击该选项空格&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 键单击相应的命令 ALT+带下划线的字母 单击所选按钮 ENTER <BR><BR>在选项上向后移动 SHIFT+TAB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在选项卡上向后移动 CTRL+SHIFT+TAB <BR><BR>在选项上向前移动 TAB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在选项卡上向前移动 CTRL+TAB <BR><BR>如果在“另存为”或“打开” 对话框中选择了某文件夹， 要打开上一级文件夹 BACKSPACE <BR><BR>在“另存为”或“打开”对话框中打开“保存到”或“查阅” F4 <BR><BR>刷新“另存为”或“打开”对话框 F5 </SPAN><BR><BR><SPAN style="COLOR: #800080">六、使用“桌面”、“我的电脑”和“Windows资源管理器”快捷键 </SPAN><BR><BR><SPAN style="COLOR: #000080">插入光盘时不用“自动播放” 功能按住 SHIFT插入 CD-ROM&nbsp; <BR><BR>复制文件按住 CTRL拖动文件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;创建快捷方式按住CTRL+SHIFT拖动文件 <BR><BR>选择所有项目 CTRL+ A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 查看项目的属性ALT+ENTER或ALT+双击</SPAN> <BR><BR><SPAN style="COLOR: #800080">七、Microsoft放大程序的快捷键 <BR></SPAN><BR><SPAN style="COLOR: #000080">Windows徽标+PRINT SCREEN将屏幕复制到剪贴板（包括鼠标光标） <BR><BR>Windows徽标+SCROLL LOCK将屏幕复制到剪贴板（不包括鼠标光标） <BR><BR>Windows徽标+ PAGE UP切换反色。 Windows徽标+ PAGE DOWN切换跟随鼠标光标 <BR><BR>Windows徽标+向上箭头增加放大率 Windows徽标+向下箭头减小放大率</SPAN> <BR><BR><SPAN style="COLOR: #800080">八、使用辅助选项快捷键 <BR><BR></SPAN><SPAN style="COLOR: #000080">切换粘滞键开关 SHIFT键五次 切换切换键开关 NUM LOCK五秒 <BR><BR>切换筛选键开关右 SHIFT八秒 切换鼠标键开关左ALT+左SHIFT+NUM LOCK <BR><BR>切换高对比度开关左ALT+左SHIFT+PRINT SCREEN </SPAN><BR>---------------------------------------------------------------- <BR><SPAN style="COLOR: #800080">shift 键十三招 <BR></SPAN><BR>下面就简单介绍一下<SPAN style="COLOR: #800080">shift键</SPAN>的几种功能： <BR><BR><SPAN style="COLOR: #000080">1、彻底删除文件： <BR>用鼠标右键单击要删除的文件,在按住shift键的同时选择“删除”（或者在使用键盘时，按下del键的同时按下shift键）然后单击“是”确认删除。这样，将彻底删除所选文件而不是把文件放到回收站中。 <BR><BR>2、跳过自动播放： <BR>如果已经把光盘设置为“自动播放”,在光驱中放入光盘的同时按住shift键直到光驱的灯灭掉,则可以暂时取消“自动播放”功能。但是如果“自动播放”功能被关闭了, 当插入光盘时按住shift键则将导致自动播放。 <BR><BR>3、关闭连续窗口： <BR>在使用“我的电脑”进行多窗口浏览时,如果想关闭所选文件夹及其所有父文件夹可以先按住shift键，然后在所选文件夹标题栏的右上角单击关闭按钮(×)即可。 <BR><BR>4、修改打开方式： <BR>对于扩展名相同的文件，如果想用不同的程序打开相关联的文件, 可以先按住shift键，再用鼠标右键单击文件，然后单击“打开方式”即可。 <BR><BR>5、调出环境菜单： <BR>在桌面或者应用程序中，当鼠标右键单击某一对象时,会弹出一个快捷菜单来。如果鼠标右键坏了,如何使用这一功能呢？此时只需首先选择该对象，然后按shift＋f10即可。 <BR><BR>6、跳过启动文件： <BR>当出现win98的启动画面时即按住shift键直到系统开机过程结束, 则“开始\程序\启动” 组中的程序将不被执行。如果在启动画面出现之前就按住了shift键，则系统将自动进入安全模式。 <BR><BR>7、快速选定文件： <BR>在桌面“我的电脑”或“资源管理器”中,将浏览器中的单击方式扩充到文件夹和桌面后，先用鼠标指向某一个对象,然后在按下shift键的同时，再指向另外一个对象,系统将选择两个对象之间所组成的矩形区域内的所有对象，以达到快速选取的目的。 <BR><BR>8、创建快捷方式： <BR>在使用“我的电脑”或“windows 资源管理器”时,要迅速创建快捷方式,可先按住ctrl＋shift,然后把文件拖到桌面上即可。 <BR><BR>9、快速启动系统： <BR>在系统运行过程中出现问题需要重新启动系统时,先选择“关闭系统”中的“重新启动计算机”，然后在按住shift键的同时用鼠标单击“是”按钮，即可快速启动系统而不是启动计算机, 因为此时win98只是重新启动gui,而不再重新从bios启动, 从而可以节省不少时间（但此法对当前状态为安全模式则不起作用,如果是安装了新硬件后也可能不起作用）。 <BR><BR>10、切换中文输入： <BR>在win98中进行中文输入时,按ctrl＋shift键可在各种中文输入法中进行切换（当然你也可以自定义成左alt＋shift），而按shift加空格键则可进行全角/半角方式的转换。 <BR><BR>11、在internet explorer中： <BR>先按住shift键再单击任一链接，就会弹出一个新的浏览窗口以显示该链接所指定的web页面，其作用和鼠标右键单击某一文本链接（注意：图形链接不行）并选择“在新窗口中打开” 一样。 <BR><BR>12、在word 97中： <BR>按住shift键，再单击“文件”菜单，其中的“关闭”和“保存”命令将被替换为“全部关闭”和“全部保存”。 <BR><BR>13、在画图时，如果先按下shift键，则可以画出规则的图形，如正方形、圆形、正多边形、垂直 线或水平线等）；在改变图形对象的大小时，如果先按下shift键，则可以保持原图的长宽比例。 <BR></SPAN><BR><SPAN style="COLOR: #800080">二、 alt键 </SPAN><BR><BR><SPAN style="COLOR: #000080">1、激活操作命令： <BR>按下alt键可以激活活动窗口的菜单栏，使菜单栏的第一个菜单成为高亮条,而按下alt键和一个字母就可以激活这个字母所代表的菜单项,如按下alt＋f就可以激活当前窗口的“文件（file）”菜单。此外,在对话框中,同时按下alt键和带下划线的字母则可以选定该选项并执行相应的操作。 <BR><BR>2、终止某一进程： <BR>按下ctrl＋alt＋del 组合键即可弹出一个“关闭程序”对话框，选取某一进程, 然后点击“结束任务”即可快速终止该进程。而再次按下ctrl＋alt＋del组合键则可重新启动计算机。 <BR><BR>3、弹出下拉列表： <BR>在对话框中，可以通过alt＋向下箭头键来弹出所选的下拉列表，以免去移动鼠标寻找并点击列表框下箭头按钮之苦。 <BR><BR>4、快速查看属性： <BR>按下alt＋enter组合键或在按住alt键的同时鼠标左键双击某对象（如资源管理器右边窗口中的文件夹、文件、桌面上的图标等,左边窗口中的文件夹不行）, 则可快速打开其“属性”对话框。其作用相当于点鼠标右键，并选取“属性”。 <BR><BR>5、切换dos窗口： <BR>按下alt＋enter组合键可以在窗口和全屏幕方式下切换 ms－dos。 <BR><BR>6、万能抓图热键： <BR>在运行游戏或其它应用软件中，当屏幕上出现精美的画面时按下alt＋printscreen组合键，就可以把当前活动窗口或对话框的内容拷贝至剪帖板 <BR></SPAN></SPAN>]]></description>
</item><item>
<title><![CDATA[MyEclipse+Resin 安装文档]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=28001</link>
<author>jdilt</author>
<pubDate>2007/9/11 8:49:02</pubDate>
<description><![CDATA[<P></P>
<P>1. 安装java开发环境<BR>先从<A href="http://java.sun.com">http://java.sun.com</A>下载j2sdk-1_4_2_11-windows-i586-p.exe<BR>安装目录：D:\j2sdk1.4.2_11</P>
<P>设置JAVA_HOME(系统)环境变量：<BR>JAVA_HOME=D:\j2sdk1.4.2_11<BR>设置CLASSPATH(系统)环境变量：<BR>CLASSPATH=D:\j2sdk1.4.2_11\bin;.;D:\j2sdk1.4.2_11\lib\tools.jar;D:\j2sdk1.4.2_11\lib\dt.jar<BR>另外在(系统)环境变量Path的最后加入：<BR>D:\j2sdk1.4.2_11\bin</P>
<P><BR>2. 安装mysql5.0<BR>运行setup.exe<BR>选择安装类型：custom<BR>安装目录：d:\MySQL\MySQL Server 5.0\</P>
<P>config mysql server:<BR>instance type: developer machine<BR>multifunctional<BR>tablespace: installation path</P>
<P><BR>default charset: gbk</P>
<P><BR>3. 安装MyEclipse开发环境</P>
<P><BR>4. 安装mysql-connector-java-3.1.11-bin.jar<BR>从网上下载mysql-connector-java-3.1.11-bin.jar文件，将其复制到resin的lib目录下以及%catalina_home%/common/lib目录下。</P>
<P>5. 安装resin-3<BR>解压缩resin-3.zip文件到x:\resin-3<BR>设置系统环境变量RESIN_HOME为：d:\resin-3<BR>启动resin的httpd<BR>测试连接：<BR><A href="http://localhost:8080/">http://localhost:8080/</A></P>
<P>6.在MyEclipse中调试resin项目的方法</P>
<P>1、在新建的java项目的构建路径中把resin的lib目录的所有包和jdk的tools.jar包加入</P>
<P>2、在项目的运行窗口中按下面的步骤修改：</P>
<P>run-&gt;new application-&gt;</P>
<P>Main class:<BR>com.caucho.server.resin.Resin</P>
<P>Program arguments:<BR>-conf "${project_loc}\resin.conf"</P>
<P>VM arguments:<BR>-Djava.util.logging.manager=com.caucho.log.LogManagerImpl</P>
<P>3、复制resin.config在当前项目的根目录下，修改其中的路径到当前项目所在目录</P>
<P>4、启动项目<BR></P>]]></description>
</item><item>
<title><![CDATA[JavaScript DOM 编程艺术]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27974</link>
<author>jdilt</author>
<pubDate>2007/9/10 8:48:48</pubDate>
<description><![CDATA[<P>第一章：</P>
<P>JavaScript是一种脚本语言，通常只能通过web浏览器去执行某种操作。<BR>DOM是一套对文档内容进行抽象和概念化的方法。<BR>DHTML<BR>&#61548;&nbsp;利用HTML进行布局<BR>&#61548;&nbsp;利用CSS设计样式<BR>&#61548;&nbsp;利用JavaScript动态改变样式</P>
<P>第二章：</P>
<P>JavaScript的两种嵌入方式：<BR>1、HTML页面内部代码<BR>&lt;script type="text/javascript"&gt;<BR>&nbsp;&nbsp; Javascript goes here ...<BR>&lt;/script&gt;<BR>2、导入外部js文件<BR>&lt;script type="text/javascript" src="file.js"&gt;<BR>&lt;/script&gt;</P>
<P>&nbsp;JavaScrip语言为解释性语言，非编译型语言。</P>
<P>语法重点：<BR>1、&nbsp;数组与关联数组<BR>数组声明：<BR>var beatles = Array("John","Paul","George","Ringo");<BR>关联数组声明：<BR>var lennon = Array();<BR>lennon["name"] = "John";<BR>lennon["year"] = 1940;<BR>lennon["living"] = false;<BR>2、&nbsp;条件语句：<BR>if<BR>{}<BR>else<BR>{}<BR>没有else if 语句<BR>3、&nbsp;对象<BR>内建对象<BR>宿主对象（host object）：web浏览器提供的预定对象 如：Form、Image、Element。<BR>通过document对象可以获得给定网页上的元素</P>
<P>&nbsp;</P>
<P>第3章：</P>
<P>DOM中的节点<BR>&lt;p title = "a gentle reminder"&gt;Don't forget to ...&lt;/p&gt;<BR>p为元素节点&nbsp;title为属性节点&nbsp;Don't forget to ...为文本节点</P>
<P>四个实用的DOM方法：<BR>1、&nbsp;document.getElementById("id_string")<BR>返回对象<BR>2、&nbsp;document.getElementsByTagName("tagName_String")<BR>返回对象组 <BR>允许通配符作参数：<BR>如：得到节点数<BR>&nbsp; &nbsp;&nbsp;document.getElementsByTagName("*").length;<BR>3、&nbsp;object.getAttribute("attributeName")<BR>4、&nbsp;object.setAttribute("attributeName")</P>
<P><BR>第四章：</P>
<P>问题：在onclick事件响应时，链接被点击的默认行为也会发生.。<BR>解决方法：添加返回值false，阻止默认行为发生。<BR>onclick = "showPic(this);return false;"</P>
<P>node.nodeType 属性<BR>元素节点属性值：1<BR>属性节点属性值：2<BR>文本节点属性值：3</P>
<P>第五章：</P>
<P>预留退路：确保网页在没有javascript的情况下也能正常工作。<BR>&lt;a href="<A href="http://www.example.com">http://www.example.com</A>" onclick = "popUp(this.href);return false;"&gt;example&lt;/a&gt;</P>
<P>向CSS学习：文档结构与文档样式分离。</P>
<P><BR>第六章： </P>
<P>&nbsp;window.onload 函数（代码见：附录）</P>
<P>第七章：</P>
<P>使用Javascript改变网页的结构和内容<BR>Document.write()方法<BR>破换了Javascript分离原则，应避免使用。<BR>MIME类型为 application/xhtml + xml 与 document.wirte()方法不兼容。<BR>innerHTML属性也是非标准的DOM。<BR>1、&nbsp;Element document.createElement("tagName");<BR>2、&nbsp;Text document.createTextNode("textData"); <BR>3、&nbsp;oElement = object.appendChild(oNode)； <BR>4、&nbsp;oElement = object.insertBefore(oNewNode [, oChildNode])； <BR>&nbsp;&nbsp;如：node_old.parentNode.insertBefore(node_new,node_old);<BR>5、&nbsp;DOM没有提供insertAfter()方法；（insertAfter方法代码见：附录）</P>
<P><BR>第八章：</P>
<P>For-in 循环：可以把某个数组的下标（或：关联数组中的关键字）临时地赋给一个变量。</P>
<P>&lt;abbr&gt;与&lt;acronym&gt;&nbsp;&nbsp; IE不支持&lt;abbr&gt;</P>
<P>第九章：</P>
<P>网页的构成:<BR>&nbsp;结构层：HTML XHTML<BR>&nbsp;表示层：CSS<BR>&nbsp;行为层：Javascript&amp;DOM</P>
<P>style属性：<BR>文档的每个元素节点都有一个style属性，包括元素的样式信息。查询这个属性会返回一个对象，而不是一个简单的字符串。<BR>element.style.property<BR>eg: para.style.color; element.style.fontFamily;<BR>style属性只能检索到内嵌于HTML的样式信息，单独的css表或文件中的信息不能被检索到。</P>
<P>可以用元素的style属性改变元素样式，更简单的方式是通过改变元素的class属性值。</P>
<P>当需要为元素追加样式时，使用addClass函数&nbsp; （addClass方法代码见：附录）</P>
<P>第十章：</P>
<P>position属性的4种取值<BR>static：默认值，有关元素安装在HTML文档中的出现顺序在浏览器窗口中显示<BR>relative：与static相似，区别在于可以在float属性的作用下从文档的正常显示顺序中脱离出来。<BR>&nbsp;absolute：可放置的位置与元素在文档中出现的位置无关，为了避免冲突。只left / right 和top / buttom 。</P>
<P><BR>时间动画：<BR>&nbsp;setTimeout("function",interval);</P>
<P>function changePosition(){<BR>&nbsp;&nbsp;.&nbsp;<BR>&nbsp;&nbsp;.<BR>&nbsp;&nbsp;.<BR>&nbsp;movement = setTimeout("changePosition()",5000);<BR>}&nbsp;<BR>&nbsp;movement为全局变量，可以在函数以外取消。clearTimeout(movement);</P>
<P>parseInt函数用于从字符串中提取数值信息。<BR>&nbsp;Eg：parseInt("15px") == 15;</P>
<P>parseInt和toString方法都可以进行数制转换</P>
<P>//10进制转16进制<BR>var n = 123;<BR>alert(n.toString(16));</P>
<P>//16进制转2进制<BR>var n = 0xff;<BR>alert(n.toString(2));</P>
<P>//16进制字符串转10进制<BR>var n = "ff"<BR>alert(parseInt(n,16));</P>
<P>使用overflow属性进行裁剪：<BR>&nbsp;Overflow：显示区域小于包含内容的情况。<BR>overflow的4种属性值：<BR>&nbsp;visible：不裁剪溢出内容，全部内容可见&nbsp;<BR>&nbsp;hidden：裁剪溢出内容，溢出部分不可见<BR>&nbsp;scroll：裁剪溢出内容，但有滚动条<BR>&nbsp;auto：与scroll相似，只有在发生溢出的情况才有滚动条</P>
<P>注意：如果吧position属性为absolution的元素载入一个position属性为relative的元素，后者就成为前者的容器，而前者在后者的区域里按absolute方式摆放。</P>
<P>第十二章：</P>
<P>Ajax技术：<BR>&nbsp;服务器端处理是异步发生的，用户发出的每一个请求不见得会导致整个页面的刷新，服务器可以在后台进行处理。<BR>&nbsp;Ajax技术核心是在客户端和服务器之间插入一个中转站：javascript脚本先把请求从客户端发到中转站，中转站再把请求转发给服务器。服务器响应也通过中转站转给javascript处理。这个中转站就是XMLRequest对象。</P>
<P>DOM方法和属性：</P>
<P>insertBefore和appendChild函数在插入节点时，如果将要插入的节点本身就在文档中，那么将自动条用removeChild方法清楚原始位置。因此都可以用于转移文档内节点。</P>
<P>DOM属性：<BR>&nbsp;元素节点&nbsp;属性节点&nbsp;文本节点<BR>nodeName&nbsp;元素名&nbsp;属性名&nbsp;"#text"<BR>nodeType&nbsp;1&nbsp;2&nbsp;3<BR>nodeValue&nbsp;null&nbsp;属性值&nbsp;文本内容</P>
<P>遍历DOM数节点：<BR>&#61550;&nbsp;childNodes<BR>&#61550;&nbsp;firstNode<BR>&#61550;&nbsp;lastNode&nbsp;<BR>&#61550;&nbsp;previousSibling<BR>&#61550;&nbsp;nextSibling<BR>&#61550;&nbsp;parentNode</P>
<P>第11章：</P>
<P>整站设计：<BR>/images<BR>/styles<BR>/script<BR>&nbsp;layout.css&nbsp; <BR>&nbsp;color.css<BR>&nbsp;typography.css </P>
<P>basic.css <BR>&nbsp;@import url (layout.css);<BR>&nbsp;@import url (color.css);<BR>&nbsp;@import url (typography.css);</P>
<P>在页面中，只需要导入basic.css&nbsp;：<BR>&lt;link rel="styleSheet" type="test/css" media="screen" href="style/basic.css" /&gt;</P>
<P>注意：<BR>&nbsp;颜色：如果为某种元素设置了某种前景色，就应为它设置一种背景色。如果不注意这个细节，可能导致某些文本内容变成“隐形”文字。<BR>&nbsp;a:link {<BR>&nbsp;color:#445;<BR>&nbsp;background-color:#e66;<BR>}</P>
<P>&nbsp;布局：用通配符把每个元素的均空和间距都设置为0，这样做可以让页面不受浏览器默认设置的影响。<BR>&nbsp;*{<BR>&nbsp;padding 0;<BR>&nbsp;margin 0;<BR>}</P>
<P>推荐：均空信息放入layout.css，间距信息放入typography.css里。</P>
<P>附录：<BR>addLoadEvent&nbsp;<BR>insertAfter<BR>addClass<BR>StripTable</P>
<P>function addLoadEvent(func) {<BR>var oldonload = window.onload;<BR>if (typeof window.onload != ‘function') {<BR>window.onload = func;<BR>} else {<BR>window.onload = function() {<BR>oldonload();<BR>func();<BR>}<BR>}<BR>}</P>
<P><BR>function insertAfter(newElement,targetElement) {<BR>var parent = targetElement.parentNode;<BR>if (parent.lastChild == targetElement) {<BR>parent.appendChild(newElement);<BR>} else {<BR>parent.insertBefore(newElement,targetElement.nextSibling);<BR>}<BR>}</P>
<P>&nbsp;</P>
<P>function addClass(element,value) {<BR>if (!element.className) {<BR>element.className = value;<BR>} else {<BR>newClassName = element.className;<BR>newClassName+= " ";<BR>newClassName+= value;<BR>element.className = newClassName;<BR>}<BR>}</P>
<P>function stripeTables() {<BR>if (!document.getElementsByTagName) return false;<BR>var tables = document.getElementsByTagName("table");<BR>for (var i=0; i&lt;tables.length; i++) {<BR>var odd = false;<BR>var rows = tables[i].getElementsByTagName("tr");<BR>for (var j=0; j&lt;rows.length; j++) {<BR>if (odd == true) {<BR>rows[j].style.backgroundColor = "#ffc";<BR>odd = false;<BR>} else {<BR>odd = true;<BR>}<BR>}<BR>}<BR>}</P>
<P>addLoadEvent(stripeTables);<BR></P>]]></description>
</item><item>
<title><![CDATA[The Easy Way to Extract Useful Text from Arbitrary HTML]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27718</link>
<author>jdilt</author>
<pubDate>2007/8/31 7:36:22</pubDate>
<description><![CDATA[
<P><IMG alt="[Statistical Text Mining]" src="http://ai-depot.com/articles/wp-content/uploads/2007/04/statistics.png"></P>
<P>You’ve finally got your hands on the diverse collection of HTML documents you needed. But the content you’re interested in is hidden amidst adverts, layout tables or formatting markup, and other various links. Even worse, there’s visible text in the menus, headers and footers that you want to filter out. If you don’t want to write a complex scraping program for each type of HTML file, there is a solution.</P>
<P>This article shows you how to write a relatively simple script to extract text paragraphs from large chunks of HTML code, without knowing its structure or the tags used. It works on news articles and blogs pages with worthwhile text content, among others…</P>
<P>Do you want to find out how statistics and machine learning can save you time and effort <A href="http://ai-depot.com/articles/the-easy-way-to-extract-useful-text-from-arbitrary-html/">mining text</A>?</P>
<P><A id=more-90></A></P>
<DIV class=advert>
<SCRIPT type=text/javascript><!--
google_ad_client = "pub-0940885572422333";
google_alternate_color = "FFFFFF";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text";
//2007-04-05: Content
google_ad_channel = "6105530284";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "202040";
google_color_text = "000000";
google_color_url = "606030";
//-->
</SCRIPT>

<SCRIPT src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript>
</SCRIPT>
<IFRAME name=google_ads_frame marginWidth=0 marginHeight=0 src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-0940885572422333&amp;dt=1188516894734&amp;lmt=1188516894&amp;alt_color=FFFFFF&amp;format=468x60_as&amp;output=html&amp;correlator=1188516894406&amp;channel=6105530284&amp;url=http%3A%2F%2Fai-depot.com%2Farticles%2Fthe-easy-way-to-extract-useful-text-from-arbitrary-html%2F&amp;color_bg=FFFFFF&amp;color_text=000000&amp;color_link=202040&amp;color_url=606030&amp;color_border=FFFFFF&amp;ad_type=text&amp;cc=100&amp;ga_vid=354901629.1188516895&amp;ga_sid=1188516895&amp;ga_hid=1063679345&amp;flash=9&amp;u_h=768&amp;u_w=1024&amp;u_ah=738&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_java=true" frameBorder=0 width=468 scrolling=no height=60 allowTransparency></IFRAME></DIV>
<P>The concept is rather simple: use information about the density of text vs. HTML code to work out if a line of text is worth outputting. (This isn’t a novel idea, but it works!) The basic process works as follows:</P>
<OL>
<LI>Parse the HTML code and keep track of the number of bytes processed. 
<LI>Store the text output on a per-line, or per-paragraph basis. 
<LI>Associate with each text line the number of bytes of HTML required to describe it. 
<LI>Compute the text density of each line by calculating the ratio of text to bytes. 
<LI>Then decide if the line is part of the content by using a neural network. </LI></OL>
<P>You can get pretty good results just by checking if the line’s density is above a fixed threshold (or the average), but the system makes fewer mistakes if you use machine learning — not to mention that it’s easier to implement!</P>
<P>Let’s take it from the top…</P>
<H3>Converting the HTML to Text</H3>
<P>What you need is the core of a text-mode browser, which is already setup to read files with HTML markup and display raw text. By reusing existing code, you won’t have to spend too much time handling invalid XML documents, which are very common — as you’ll realise quickly.</P>
<P>As a quick example, we’ll be using <A href="http://python.org/">Python</A> along with a few built-in modules: <TT>htmllib</TT> for the parsing and <TT>formatter</TT> for outputting formatted text. This is what the top-level function looks like:</P>
<DIV class=wp_syntax style="PADDING-BOTTOM: 0px">
<DIV class=code><PRE class=python><SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> extract_text<SPAN style="COLOR: black">(</SPAN>html<SPAN style="COLOR: black">)</SPAN>:
    <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Derive from formatter.AbstractWriter to store paragraphs.</SPAN>
    writer = LineWriter<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN>
    <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Default formatter sends commands to our writer.</SPAN>
    <SPAN style="COLOR: #808040">formatter</SPAN> = AbstractFormatter<SPAN style="COLOR: black">(</SPAN>writer<SPAN style="COLOR: black">)</SPAN>
    <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Derive from htmllib.HTMLParser to track parsed bytes.</SPAN>
    <SPAN style="COLOR: #808040">parser</SPAN> = TrackingParser<SPAN style="COLOR: black">(</SPAN>writer, <SPAN style="COLOR: #808040">formatter</SPAN><SPAN style="COLOR: black">)</SPAN>
    <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Give the parser the raw HTML data.</SPAN>
    <SPAN style="COLOR: #808040">parser</SPAN>.<SPAN style="COLOR: black">feed</SPAN><SPAN style="COLOR: black">(</SPAN>html<SPAN style="COLOR: black">)</SPAN>
    <SPAN style="COLOR: #808040">parser</SPAN>.<SPAN style="COLOR: black">close</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN>
    <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Filter the paragraphs stored and output them.</SPAN>
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">return</SPAN> writer.<SPAN style="COLOR: black">output</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN></PRE></DIV></DIV>
<P>The TrackingParser itself overrides the callback functions for parsing start and end tags, as they are given the current parse index in the buffer. You don’t have access to that normally, unless you start diving into frames in the call stack — which isn’t the best approach! Here’s what the class looks like:</P>
<DIV class=wp_syntax style="PADDING-BOTTOM: 0px">
<DIV class=code><PRE class=python><SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">class</SPAN> TrackingParser<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #808040">htmllib</SPAN>.<SPAN style="COLOR: #808040">HTMLParser</SPAN><SPAN style="COLOR: black">)</SPAN>:
    <SPAN style="COLOR: #48488b">""</SPAN><SPAN style="COLOR: #48488b">"Try to keep accurate pointer of parsing location."</SPAN><SPAN style="COLOR: #48488b">""</SPAN>
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> <SPAN style="COLOR: #0000cd">__init__</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, writer, *args<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #808040">htmllib</SPAN>.<SPAN style="COLOR: #808040">HTMLParser</SPAN>.<SPAN style="COLOR: #0000cd">__init__</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, *args<SPAN style="COLOR: black">)</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">writer</SPAN> = writer
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> parse_starttag<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, i<SPAN style="COLOR: black">)</SPAN>:
        index = <SPAN style="COLOR: #808040">htmllib</SPAN>.<SPAN style="COLOR: #808040">HTMLParser</SPAN>.<SPAN style="COLOR: black">parse_starttag</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, i<SPAN style="COLOR: black">)</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">writer</SPAN>.<SPAN style="COLOR: black">index</SPAN> = index
        <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">return</SPAN> index
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> parse_endtag<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, i<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">writer</SPAN>.<SPAN style="COLOR: black">index</SPAN> = i
        <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">return</SPAN> <SPAN style="COLOR: #808040">htmllib</SPAN>.<SPAN style="COLOR: #808040">HTMLParser</SPAN>.<SPAN style="COLOR: black">parse_endtag</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, i<SPAN style="COLOR: black">)</SPAN></PRE></DIV></DIV>
<P>The <TT>LineWriter</TT> class does the bulk of the work when called by the default formatter. If you have any improvements or changes to make, most likely they’ll go here. This is where we’ll put our machine learning code in later. But you can keep the implementation rather simple and still get good results. Here’s the simplest possible code:</P>
<DIV class=wp_syntax style="PADDING-BOTTOM: 0px">
<DIV class=code><PRE class=python><SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">class</SPAN> Paragraph:
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> <SPAN style="COLOR: #0000cd">__init__</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN><SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">text</SPAN> = <SPAN style="COLOR: #48488b">''</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">bytes</SPAN> = <SPAN style="COLOR: #454580">0</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">density</SPAN> = <SPAN style="COLOR: #454580">0.0</SPAN>
&nbsp;
<SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">class</SPAN> LineWriter<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #808040">formatter</SPAN>.<SPAN style="COLOR: black">AbstractWriter</SPAN><SPAN style="COLOR: black">)</SPAN>:
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> <SPAN style="COLOR: #0000cd">__init__</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, *args<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">last_index</SPAN> = <SPAN style="COLOR: #454580">0</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN> = <SPAN style="COLOR: black">[</SPAN>Paragraph<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN><SPAN style="COLOR: black">]</SPAN>
        <SPAN style="COLOR: #808040">formatter</SPAN>.<SPAN style="COLOR: black">AbstractWriter</SPAN>.<SPAN style="COLOR: #0000cd">__init__</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN><SPAN style="COLOR: black">)</SPAN>
&nbsp;
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> send_flowing_data<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, data<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Work out the length of this text chunk.</SPAN>
        t = <SPAN style="COLOR: #a0a020">len</SPAN><SPAN style="COLOR: black">(</SPAN>data<SPAN style="COLOR: black">)</SPAN>
        <SPAN style="COLOR: #808080; FONT-STYLE: italic"># We've parsed more text, so increment index.</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">index</SPAN> += t
        <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Calculate the number of bytes since last time.</SPAN>
        b = <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">index</SPAN> - <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">last_index</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">last_index</SPAN> = <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">index</SPAN>
        <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Accumulate this information in current line.</SPAN>
        l = <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN><SPAN style="COLOR: black">[</SPAN><SPAN style="COLOR: #454580">-1</SPAN><SPAN style="COLOR: black">]</SPAN>
        l.<SPAN style="COLOR: black">text</SPAN> += data
        l.<SPAN style="COLOR: black">bytes</SPAN> += b
&nbsp;
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> send_paragraph<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, blankline<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #48488b">""</SPAN><SPAN style="COLOR: #48488b">"Create a new paragraph if necessary."</SPAN><SPAN style="COLOR: #48488b">""</SPAN>
        <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">if</SPAN> <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN><SPAN style="COLOR: black">[</SPAN><SPAN style="COLOR: #454580">-1</SPAN><SPAN style="COLOR: black">]</SPAN>.<SPAN style="COLOR: black">text</SPAN> == <SPAN style="COLOR: #48488b">''</SPAN>:
            <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">return</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN><SPAN style="COLOR: black">[</SPAN><SPAN style="COLOR: #454580">-1</SPAN><SPAN style="COLOR: black">]</SPAN>.<SPAN style="COLOR: black">text</SPAN> += <SPAN style="COLOR: #48488b">'n'</SPAN> * <SPAN style="COLOR: black">(</SPAN>blankline<SPAN style="COLOR: #454580">+1</SPAN><SPAN style="COLOR: black">)</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN><SPAN style="COLOR: black">[</SPAN><SPAN style="COLOR: #454580">-1</SPAN><SPAN style="COLOR: black">]</SPAN>.<SPAN style="COLOR: black">bytes</SPAN> += <SPAN style="COLOR: #454580">2</SPAN> * <SPAN style="COLOR: black">(</SPAN>blankline<SPAN style="COLOR: #454580">+1</SPAN><SPAN style="COLOR: black">)</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN>.<SPAN style="COLOR: black">append</SPAN><SPAN style="COLOR: black">(</SPAN>Writer.<SPAN style="COLOR: black">Paragraph</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN><SPAN style="COLOR: black">)</SPAN>
&nbsp;
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> send_literal_data<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>, data<SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">send_flowing_data</SPAN><SPAN style="COLOR: black">(</SPAN>data<SPAN style="COLOR: black">)</SPAN>
&nbsp;
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> send_line_break<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN><SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">send_paragraph</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #454580">0</SPAN><SPAN style="COLOR: black">)</SPAN></PRE></DIV></DIV>
<P>This code doesn’t do any outputting yet, it just gathers the data. We now have a bunch of paragraphs in an array, we know their length, and we know roughly how many bytes of HTML were necessary to create them. Let’s see what emerge from our statistics.</P>
<H3>Examining the Data</H3>
<P>Luckily, there are some patterns in the data. In the raw output below, you’ll notice there are definite spikes in the number of HTML bytes required to encode lines of text, notably around the title, both sidebars, headers and footers.</P>
<DIV class=image><IMG alt="Graph of Text Output vs. HTML Bytes" src="http://ai-depot.com/articles/wp-content/uploads/2007/04/textvsbytes.png"></DIV>
<P>While the number of HTML bytes spikes in places, it remains below average for quite a few lines. On these lines, the text output is rather high. Calculating the <STRONG>density</STRONG> of text to HTML bytes gives us a better understanding of this relationship.</P>
<DIV class=image><IMG alt="Graph of Text Density per Line" src="http://ai-depot.com/articles/wp-content/uploads/2007/04/density.png"></DIV>
<P>The patterns are more obvious in this density value, so it gives us something concrete to work with.</P>
<H3>Filtering the Lines</H3>
<P>The simplest way we can filter lines now is by comparing the density to a fixed threshold, such as 50% or the <EM>average</EM> density. Finishing the <TT>LineWriter</TT> class:</P>
<DIV class=wp_syntax style="PADDING-BOTTOM: 0px">
<DIV class=code><PRE class=python>    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> compute_density<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN><SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #48488b">""</SPAN><SPAN style="COLOR: #48488b">"Calculate the density for each line, and the average."</SPAN><SPAN style="COLOR: #48488b">""</SPAN>
        total = <SPAN style="COLOR: #454580">0.0</SPAN>
        <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">for</SPAN> l <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">in</SPAN> <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN>:
            l.<SPAN style="COLOR: black">density</SPAN> = <SPAN style="COLOR: #a0a020">len</SPAN><SPAN style="COLOR: black">(</SPAN>l.<SPAN style="COLOR: black">text</SPAN><SPAN style="COLOR: black">)</SPAN> / <SPAN style="COLOR: #a0a020">float</SPAN><SPAN style="COLOR: black">(</SPAN>l.<SPAN style="COLOR: black">bytes</SPAN><SPAN style="COLOR: black">)</SPAN>
            total += l.<SPAN style="COLOR: black">density</SPAN>
        <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Store for optional use by the neural network.</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">average</SPAN> = total / <SPAN style="COLOR: #a0a020">float</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">len</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN><SPAN style="COLOR: black">)</SPAN><SPAN style="COLOR: black">)</SPAN>
&nbsp;
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">def</SPAN> output<SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #a0a020">self</SPAN><SPAN style="COLOR: black">)</SPAN>:
        <SPAN style="COLOR: #48488b">""</SPAN><SPAN style="COLOR: #48488b">"Return a string with the useless lines filtered out."</SPAN><SPAN style="COLOR: #48488b">""</SPAN>
        <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">compute_density</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN>
        output = <SPAN style="COLOR: #808040">StringIO</SPAN>.<SPAN style="COLOR: #808040">StringIO</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN>
        <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">for</SPAN> l <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">in</SPAN> <SPAN style="COLOR: #a0a020">self</SPAN>.<SPAN style="COLOR: black">lines</SPAN>:
            <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Check density against threshold.</SPAN>
            <SPAN style="COLOR: #808080; FONT-STYLE: italic"># Custom filter extensions go here.</SPAN>
            <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">if</SPAN> l.<SPAN style="COLOR: black">density</SPAN> &amp;gt; <SPAN style="COLOR: #454580">0.5</SPAN>:
	        output.<SPAN style="COLOR: black">write</SPAN><SPAN style="COLOR: black">(</SPAN>l.<SPAN style="COLOR: black">text</SPAN><SPAN style="COLOR: black">)</SPAN>
	<SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">return</SPAN> output.<SPAN style="COLOR: black">getvalue</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: black">)</SPAN></PRE></DIV></DIV>
<P>This rough filter typically gets most of the lines right. All the headers, footers and sidebars text is usually stripped as long as it’s not too long. However, if there are long copyright notices, comments, or descriptions of other stories, then those are output too. Also, if there are short lines around inline graphics or adverts within the text, these are not output.</P>
<P>To fix this, we need a more complex filtering heuristic. But instead of spending days working out the logic manually, we’ll just grab loads of information about each line and use machine learning to find patterns for us.</P>
<H3>Supervised Machine Learning</H3>
<P>Here’s an example of an interface for tagging lines of text as content or not:</P>
<DIV class=image><IMG alt="Training From News Articles" src="http://ai-depot.com/articles/wp-content/uploads/2007/04/training.png"></DIV>
<P>The idea of supervised learning is to provide examples for an algorithm to learn from. In our case, we give it a set documents that were tagged by humans, so we know which line must be output and which line must be filtered out. For this we’ll use a simple neural network known as the perceptron. It takes floating point inputs and filters the information through weighted connections between “neurons” and outputs another floating point number. Roughly speaking, the number of neurons and layers affects the ability to approximate functions precisely; we’ll use both single-layer perceptrons (SLP) and multi-layer perceptrons (MLP) for prototyping.</P>
<P>To get the neural network to learn, we need to gather some data. This is where the earlier <TT>LineWriter.output()</TT> function comes in handy; it gives us a central point to process all the lines at once, and make a global decision which lines to output. Starting with intuition and experimenting a bit, we discover that the following data is useful to decide how to filter a line:</P>
<UL>
<LI>Density of the <STRONG>current</STRONG> line. 
<LI>Number of HTML bytes of the line. 
<LI>Length of output text for this line. 
<LI>These three values for the <STRONG>previous</STRONG> line, 
<LI>… and the same for the <STRONG>next</STRONG> line. </LI></UL>
<P>For the implementation, we’ll be using Python to interface with <EM>FANN</EM>, the <A href="http://leenissen.dk/fann/">Fast Artificial Neural Network</A> Library. The essence of the learning code goes like this:</P>
<DIV class=wp_syntax style="PADDING-BOTTOM: 0px">
<DIV class=code><PRE class=python><SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">from</SPAN> pyfann <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">import</SPAN> fann, libfann
&nbsp;
<SPAN style="COLOR: #808080; FONT-STYLE: italic"># This creates a new single-layer perceptron with 1 output and 3 inputs.</SPAN>
obj = libfann.<SPAN style="COLOR: black">fann_create_standard_array</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #454580">2</SPAN>, <SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #454580">3</SPAN>, <SPAN style="COLOR: #454580">1</SPAN><SPAN style="COLOR: black">)</SPAN><SPAN style="COLOR: black">)</SPAN>
ann = fann.<SPAN style="COLOR: black">fann_class</SPAN><SPAN style="COLOR: black">(</SPAN>obj<SPAN style="COLOR: black">)</SPAN>
&nbsp;
<SPAN style="COLOR: #808080; FONT-STYLE: italic"># Load the data we described above.</SPAN>
patterns = fann.<SPAN style="COLOR: black">read_train_from_file</SPAN><SPAN style="COLOR: black">(</SPAN><SPAN style="COLOR: #48488b">'training.txt'</SPAN><SPAN style="COLOR: black">)</SPAN>
ann.<SPAN style="COLOR: black">train_on_data</SPAN><SPAN style="COLOR: black">(</SPAN>patterns, <SPAN style="COLOR: #454580">1000</SPAN>, <SPAN style="COLOR: #454580">1</SPAN>, <SPAN style="COLOR: #454580">0.0</SPAN><SPAN style="COLOR: black">)</SPAN>
&nbsp;
<SPAN style="COLOR: #808080; FONT-STYLE: italic"># Then test it with different data.</SPAN>
<SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">for</SPAN> datin, datout <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">in</SPAN> validation_data:
    result = ann.<SPAN style="COLOR: black">run</SPAN><SPAN style="COLOR: black">(</SPAN>datin<SPAN style="COLOR: black">)</SPAN>
    <SPAN style="FONT-WEIGHT: bold; COLOR: #7777ff">print</SPAN> <SPAN style="COLOR: #48488b">'Got:'</SPAN>, result, <SPAN style="COLOR: #48488b">' Expected:'</SPAN>, datout</PRE></DIV></DIV>
<P>Trying out different data and different network structures is a rather mechanical process. Don’t have too many neurons or you may train too well for the set of documents you have (overfitting), and conversely try to have enough to solve the problem well. Here are the results, varying the number of lines used (1L-3L) and the number of attributes per line (1A-3A):</P>
<DIV class=image><IMG alt="Neural Network Comparison Chart" src="http://ai-depot.com/articles/wp-content/uploads/2007/04/comparison.png"></DIV>
<P>The interesting thing to note is that 0.5 is already a pretty good guess at a fixed threshold (see first set of columns). The learning algorithm cannot find much better solution for comparing the density alone (1 Attribute in the second column). With 3 Attributes, the next SLP does better overall, though it gets more false negatives. Using multiple lines also increases the performance of the single layer perceptron (fourth set of columns). And finally, using a more complex neural network structure works best overall — making 80% less errors in filtering the lines.</P>
<P><EM>Note that you can tweak how the error is calculated if you want to punish false positives more than false negatives.</EM></P>
<H3>Conclusion</H3>
<P>Extracting text from arbitrary HTML files doesn’t necessarily require scraping the file with custom code. You can use statistics to get pretty amazing results, and machine learning to get even better. By tweaking the threshold, you can avoid the worst false positive that pollute your text output. But it’s not so bad in practice; where the neural network makes mistakes, even humans have trouble classifying those lines as “content” or not.</P>
<P>Now all you have to figure out is what to do with that clean text content!</P>]]></description>
</item><item>
<title><![CDATA[比价网与深度网络]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27564</link>
<author>jdilt</author>
<pubDate>2007/8/25 17:39:54</pubDate>
<description><![CDATA[
<DIV class=postText>
<P dir=ltr style="MARGIN-RIGHT: 0px"><STRONG>1、比较购物</STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 随着国内电子商务的发展，越来越多的用户开始体验网上购物，除了著名的TaoBao和Ebay，国内还有很多中小型的B to C 专业网站，在众多的网站中，如何货比三家，不需要登陆每个网站来查看自己想要购买的商品呢？这样就孕育了比较购物的设想，所谓比较购物就是为消费者提供从多种在线零售网站中进行商品价格、网站信誉、购物方便性等方面的比较资料，随着比较购物网站的发展，其作用不仅表现在为在线消费者提供方便，也为在线销售上推广产品提供了机会，实际上也就等类似于一个搜索引擎的作用了，并且处于网上购物的需要，从比较购物网站获得的搜索结果比通用搜索引擎获得的信息更加集中，信息也更全面（如有些比较购物网站除了产品价值信息之外，还包含了包含对在线销售商的评价等），于是比较购物网站随后又逐渐发展演变为购物搜索引擎。<BR><BR><STRONG>2、</STRONG><SPAN class=14_black><STRONG>购物搜索引擎<BR></STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2004年3月26日，国外许多IT新闻网站发布了雅虎以5.75亿美元收购欧洲第一大比较购物网站Kelkoo的消息，这使得比较购物这一“古老”的商业模式获得了广泛关注。随着加入比较购物网站的网上商店数量和产品数量的增加，比较购物网站已经与搜索引擎具有类似的特征，即作为用户查询商品信息的工具，为制定购买决策提供支持，因此一些网站开始逐渐放弃比较购物一词，而改称为购物搜索引擎。</P>
<P class=14_black><STRONG></STRONG>国外有不少知名的比较购物网站，只是近一两年有些比较购物网站才开始使用购物搜索引擎这一术语。成立于1996年的美国比较购物网站BizRate.com现在也将自己的使命定义为全球最好的购物搜索引擎。Yahoo和google也分别推出了自己的购物搜索引擎（http://shopping.yahoo.com、http://froogle.google.com），也是基于已有的搜索引擎技术。在国内，随着2004年初8848网站重新发布，购物搜索引擎一词不断出现在国内各种媒体中。其实所谓的购物搜索引擎就是以比较购物模式为基础的服务。 </P>
<P class=14_black>常规意义上基于网页搜索的搜索引擎在搜索结果中的内容是根据相关性排列的来源于其他网站的内容索引，与此类似，购物搜索引擎的检索结果也来自于被收录的网上购物网站，这样当用户检索某个商品时，所有销售该商品的网站上的产品记录都会被检索出来，用户可以根据产品价格、对网站的信任和偏好等因素进入所选择的网上购物网站购买产品，一般来说，购物搜索引擎本身并不出售这些商品。</P>
<P class=14_black>购物搜索引擎与一般的网页搜索引擎相比的主要区别在于，除了搜索产品、了解商品说明等基本信息之外，通常还可以进行商品价格价格比较、并且可以对产品和在线商店进行评级，这些评比结果指标对于用户购买决策有一定的影响，尤其对于知名度不是很高的网上零售商，通过购物搜索引擎，不仅增加了被用户发现的机会，如果在评比上有较好的排名，也有助于增加顾客的信任。以BizRate为例，用户不仅可以用多种方式进行检索，如产品名称、品牌名、网站名称等，用户还可以对产品进行评比，可以发表自己的意见，这些信息也可以被别的用户参考。因此当用户使用购物搜索引擎检索商品时，可以获得比较丰富的信息，对制定商品购买决策有较大的参考价值。这也从另一个角度说明，网上商店利用购物引擎进行推广可以增加被用户发现的机会，从而达到促销的目的，因而成为网上销售的一种常用促销手段。<BR><BR><STRONG>3、典型网站</STRONG><BR><BR>国外：<BR></P>
<P class=14_black>（1）BizRate.com <BR>在所有的比较购物网站中，成立于1996年BizRate.com 是较早，也是较为成功的一个，到2004年初，已经拥有超过40000个在线购物网站的3000多万条产品索引，事实上已经成为美国第一电子商务门户。<BR><BR><IMG height=705 alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/bizrate.jpg" width=1090 border=0><BR><BR></P>
<P class=14_black>（2）Shopping.com <BR>Shopping.com创建于1999年，由两个部分组成，一个是购物搜索引擎DealTime，另一部分是消费者评论和排名平台Epinions，2003年4月两个部分都合并在Shopping.com网站中。Shopping.com以在线购物相关信息为核心内容，包括丰富的产品信息和在线商店信息：产品信息包括产品评论、购买指南、产品图片和详细描述等，在线商店的信息则包括各种产品的价格、商店评比星级和用户评论、优惠卷和其他对顾客有价值的信息。在线商店登录Shopping.com采用的是类似于竞价广告的方式，即存入200美元的预付金，根据用户对商品信息的点击收取费用。<BR></P>
<P class=14_black><IMG height=715 alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/shopping.jpg" width=832 border=0><BR><BR>（3）Kelkoo.com<BR>即最近被雅虎收购的欧洲最大的比较购物网站，Kelkoo成立于1999年，公司总部设在巴黎，目前已经开通了10个欧洲国家的比较购物服务，大约有欧洲全部上网用户的10％使用Kelkoo的服务。Kelkoo的商业模式与Shopping.com类似，网上商店登录产品是免费的，不过要根据用户点击数量收费。<BR></P>
<P class=14_black><IMG height=741 alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/Kelkoo.jpg" width=796 border=0><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(4) PriceGrabber.com<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PriceGrabber.com是目前比较购物网站领域里的巨头。它是一种专业化的垂直搜索引擎，通过对海量信息的采集整理，向消费者提供精准的商品、商家资讯；同时，为商家提供一个高效的网络营销平台，助商家以极低的推广成本获得大量针对性极高的目标用户。该公司发展很快，在05年初上市。<BR><BR><IMG height=724 alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/pricegrabber.jpg" width=1254 border=0><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(5) Shopzilla.com<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;成立于1996年，主要服务于英，法，德；也在05年上市，紧跟在PriceGrabber之后。<BR><BR>国内：<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;国内的比较购物应该是刚刚起步，很多公司具有一定的技术，但是缺少启动资金，需要引入风投，同时推广的力度不是很大，在众多的网站中，用户很难知道有这么一个网站的存在。<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1) Gobygo.com<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;刚起步不久，主要需要第三方网站在其上注册商品推广，不知是否和Google Base类似。<BR><BR><IMG alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/gobygo.jpg" border=0><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(2) Qunar.com<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;专业的机票，酒店比较网站，买机票和订酒店的有福了，基本上在上面可以买到最便宜的机票了，同时也提供打折信息，就是搜索速度不快。<BR><BR><IMG alt="" src="http://www.cnblogs.com/images/cnblogs_com/oscarxie/比较购物/Qunar.jpg" border=0><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(3) 其他还有就是工作查找信息的网站<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这些比较购物网站基本都充当一个中介的角色，用户比较搜索后可以直接链接到选定商品所在的第三方网站完成购物。随着这些网站知名度的提高，第三方网站自动就会找上门来要求加入比较网站获取增值服务。可以看出国外的比较网比国内成熟，并已具有自己的盈利模式，希望不久的将来国内也能做得更专业，毕竟这对消费者来说又增加了一个购物挑选的场所。</P></SPAN></DIV>]]></description>
</item><item>
<title><![CDATA[the zen of css design < css布局基础>]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27543</link>
<author>jdilt</author>
<pubDate>2007/8/24 18:49:15</pubDate>
<description><![CDATA[
<P>　一些基本的HTML元素被滥用于与其不相关的页面布局　如&lt;table&gt;</P>
<P>&nbsp;&nbsp;编写合法的、带有良好结构的并拥有语义的HTML文档，在此坚固基础上应用各种css样式</P>
<P>&nbsp; 创建良好的标记：</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1、选择DOCTYPE，让浏览器或其他用户代理知道HTML语言的类型</P>
<P class=docText><A name=idd1e2376></A><A name=idd1e2381></A><A name=idd1e2384></A><A name=idd1e2389></A><A name=idd1e2394></A><A name=idd1e2397></A><A name=idd1e2402></A><A name=idd1e2407></A><A name=idd1e2412></A><A name=idd1e2415></A><A name=idd1e2418></A><A name=idd1e2421></A><SPAN class=docEmphStrong>Example:</SPAN></P><PRE>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
</PRE>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2、指定语言和字符集</P>
<P class=docText><SPAN class=docEmphStrong>Examples:</SPAN></P><PRE>&lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" &gt;
</PRE>
<P>Sets the document's XML language, in this case the ISO code for English, en.</P>
<P>&nbsp;</P><PRE>&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;</PRE>
<P class=docText>Assigns a character set to the document, in this case UTF-8.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </P>
<P class=docText>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3、指定标题</P>
<P class=docText>&nbsp;&nbsp;每个HTML页面都需要一个用来描述页面内容的&lt;&gt;元素。在访客收藏页面时，title会作为链接的描述保存到浏览器中。搜索引擎对title中包含的关键字格外感兴趣，好的title可以明显提高页面的在搜索引擎中的排名。网站的每个页面都应该有一个唯一的标题，标题应该极具描述性地概括页面的内容，而不是泛泛地介绍整个站点。</P>
<P class=docText><SPAN class=docEmphStrong>Example:</SPAN></P><PRE>&lt;title&gt;css Zen Garden: The Beauty in CSS Design&lt;/title&gt;
</PRE>
<P class=docText>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4、使用适当的标签</P>
<P class=docText>&nbsp; 根据文档内容结构选择HTML元素来标记文档，而不是根据样式选择。</P>
<P class=docText>如：用p元素包含文字段落，而不是为了换行；用blockquote包含被引用的文字，而不是为了得到缩进。找不到合适的可以描述结构的标签时，可以考虑使用通用的div或span元素。</P>
<P class=docText><A name=idd1e2589></A><SPAN class=docEmphStrong>Example:</SPAN></P><PRE>&lt;h3&gt;The Road to Enlightenment&lt;/h3&gt;</PRE><PRE>
</PRE>
<P class=docText>and not:</P><PRE>&lt;code style="font-size: 1.5em;"&gt;The Road to Enlightenment&lt;/code&gt;</PRE><PRE>            5、避免多度使用div和span</PRE><PRE>            6、尽可能少的使用标签</PRE><PRE>            7、适当地使用class和id
</PRE>
<P class=docText>&nbsp;</P>
<P class=docText>&nbsp; </P>
<P class=docText>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[FreeBSD 6.2安装及配置桌面环境]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27444</link>
<author>jdilt</author>
<pubDate>2007/8/21 21:28:53</pubDate>
<description><![CDATA[<FONT size=2>&nbsp;　1、翻阅你的 handbook 手册，查看你的机器是否适合安装 FreeBSD。<BR>&nbsp; &nbsp; 2、将 FreeBSD-Install 光盘放入你的机器的光驱中，启动电源，在光盘启动FreeBSD的启动菜单中按 1 进入安装，此时系统会进入 “Country Selection”选择菜单。<BR>&nbsp; &nbsp; 我们在其中选择“45 China” <BR>&nbsp; &nbsp; 在 “System Console Keymap”中选“USA ISO”(US ISO keymap)。<BR>接下来就进入系统安装主菜单(sysinstall Main Menu)，FreeBSD的安装配置全部可以在这里设置，使用上下箭头移动到不同的选项：<BR>&nbsp; &nbsp; Usage<BR>&nbsp; &nbsp;&nbsp; &nbsp;Standard<BR>&nbsp; &nbsp;&nbsp; &nbsp;Express<BR>&nbsp; &nbsp;&nbsp; &nbsp;Custom<BR>&nbsp; &nbsp;&nbsp; &nbsp;Configure<BR>&nbsp; &nbsp;&nbsp; &nbsp;Doc<BR>&nbsp; &nbsp;&nbsp; &nbsp;Keymap<BR>&nbsp; &nbsp;&nbsp; &nbsp;Options<BR>&nbsp; &nbsp;&nbsp; &nbsp;Fixit<BR>&nbsp; &nbsp;&nbsp; &nbsp;Upgrade<BR>&nbsp; &nbsp;&nbsp; &nbsp;Load Config<BR>&nbsp; &nbsp;&nbsp; &nbsp;Index<BR>在这里按下空格或者回车可进入相应的菜单选项。。 <BR>这里我选择Custom，自定义安装，进入 Custom 菜单：<BR>&nbsp; &nbsp;“1 Exit”&nbsp; &nbsp;&nbsp; &nbsp; // 退出并返回到上一级菜单状态<BR>&nbsp; &nbsp;“2 Options”&nbsp; &nbsp;//“View/Set various installation options查看/设置安装选项”<BR>&nbsp; &nbsp; “3 Partition” //“Allocate disk space for FreeBSD分配系统分区”<BR>&nbsp; &nbsp; “4 Label”&nbsp; &nbsp; //“Label allocated disk partitions设置系统分区”<BR>&nbsp; &nbsp; “5 Distributions” //“Select distribution(s) to extract选择安装内容”<BR>&nbsp; &nbsp; “6 Media”&nbsp; &nbsp;//“Choose the installation media type选择安装界质”<BR>&nbsp; &nbsp; “7 Commit”&nbsp;&nbsp;//“Perform any pending Partition/Label/Extract actions 所有安装选项设置完毕，提交您的安装过程”<BR>&nbsp; &nbsp;&nbsp; &nbsp;<BR>　　①选择“3 Partition分配系统分区”了：这是FreeBSD的“FDISK Partition Editor”<BR>&nbsp; &nbsp; 这里会进入一个磁盘分区创建的界面，对于新手而言，我强烈建议使用 "A" 选项，让系统自动为你创建分区。然后选择 “Q”退出 分配系统分区界面。在退出分配系统分区的时候，系统会提示你是否创建多系统引导（可能是这个意思）的一个提问，并提供了三个选项。<BR>&nbsp; &nbsp; 在“Install Boot Manager for drive ad0?”中安装BootMgr：<BR>&nbsp; &nbsp;&nbsp; &nbsp;还有一选项“BootMgr”即“Install the FreeBSD Boot Manager”把FreeBSD做为启动管理器了。<BR>&nbsp; &nbsp;&nbsp;&nbsp;如果想安装到MBR可以选“Standard”即“Install a standard MBR (no boot manager)”(不推荐)<BR>&nbsp; &nbsp;&nbsp;&nbsp;如果已经有启动管理器可以选“None”即“Leave the Master Boot Record untouched”<BR><BR>　　②建好分区之后回到“Choose Custom Installation Options自定义安装选项菜单”，选“4 Lable”接着设置系统分区：来到“FreeBSD Disklabel Editor”，看到高亮的是刚刚建立的分区，如果看不到，那返回上一步继续设置一般选择A auto DEfaults即可，让FreeBSD自动设置，新手就选自动吧，Q保存。创建完成后，一个可能的磁盘分区信息如下（这是某个前人的磁盘分区情况，我借鉴过来了）。<BR>Part Mount Size Newfs Part <BR>&nbsp; &nbsp;&nbsp; &nbsp; ad0s2a / 512MB UFS2 Y <BR>&nbsp; &nbsp;&nbsp; &nbsp; ad0s2b swap 166MB SWAP <BR>&nbsp; &nbsp;&nbsp; &nbsp; ad0s2d /var 1107MB UFS2+S Y <BR>&nbsp; &nbsp;&nbsp; &nbsp; ad0s2e /tmp 512MB UFS2+S Y <BR>&nbsp; &nbsp;&nbsp; &nbsp; ad0s2f /usr 2698MB UFS2+S Y <BR><BR>　　③ 选择“5 Distributions”，安装FreeBSD的内容：<BR>&nbsp; &nbsp; &nbsp; &nbsp; 选择菜单，有很多选项<BR>&nbsp; &nbsp; &nbsp; &nbsp; Exit、<BR>&nbsp; &nbsp; &nbsp; &nbsp; All、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Reset、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 4 Developer、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 5 X-Developer、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 6 Kern-Developer、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 7 X-Kern-Developer、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 8 User、<BR>&nbsp; &nbsp; &nbsp; &nbsp; 9 X-User、<BR>&nbsp; &nbsp; &nbsp; &nbsp; A Minimal、<BR>&nbsp; &nbsp; &nbsp; &nbsp; B Custom<BR>&nbsp; &nbsp; 使用上下箭头移动到不同的选项，按下空格或者回车选择，如果要启动X，建议一定要把Xorg选中并完全安装。在这里，我建议选择“A Minimal”最小化安装，然后返回“Choose Custom Installation Options”。如果选择“B Custom”选项，可以选ALL，回车，会有一个弹出框，选择YES，安装Ports(建议一定要安装)。 <BR>&nbsp; &nbsp; 然后选择 Exit ，退出，回到上一级菜单。<BR>　　④ 选6 ，进入安装介质选择，在这里，我们当然选择 CD-ROM 。<BR><BR>　　⑤ 现在，我们来选择 2 Options， 来看看我们刚才的设定，如果没有问题，我们就要开始进入实际的安装过程了。退出来，返回上级菜单。<BR>　　⑥ 选“7 Commit”按OK。系统会出现提示“User confirmation Requested”对话框确认是否开始安装过程(这是最后的一次机会)，如果担心有什么地方有错误，可以选“No”回头重新设置。如果没有问题，选“yes”开始安装吧。 <BR>　　接下来就是安装过程了。安装完后会提示你是否需要进入配置菜单改变其他设置(Visit the general configuration menu for a chance to set any last options?)，选择默认的“No”完成安装过程。<BR>&nbsp; &nbsp; 选“X Exit”Exit this menu (returning to previous)，回到“sysinstall main Menu ”安装主菜单。<BR>&nbsp; &nbsp; 最后，在“sysinstall Main Menu”中选“[X ExitInstall]” -&gt; “Yes”(Are you sure you wish to exit? The system will reboot (be sure to remove any floppies/CDs/DVDs from the drives). 确认退出并重新启动)。 <BR><BR>经过上面的步骤，我们已经安装了一个最小化的系统，但这个系统离我们的要求还相距甚远，别着急，我们接着来。<BR>　　重新启动系统，如果前面安装了“BootMgr”，则重启的时候会有一个启动菜单，在这里，由于我们仅仅只有一个 FreeBSD 系统，系统会显示： <BR>　　F1 FreeBSD <BR>　　不管它，一会儿，系统会自动启动。启动后，freeBSD就展现在你眼前了啦，等待一会，就会出现Login提示符，输入root，回车，熟悉的#号又出现在你的面前了（因为安装时没有设置密码）。 <BR>　　下面，我们就开始安装图形界面，本例以 Gnome 为例，KDE 的安装与此相差不大，略去。<BR>&nbsp; &nbsp; 在命令行需要入 sysinstall，是不是又到了我们熟悉的菜单了。^_^.<BR>&nbsp; &nbsp;&nbsp; &nbsp;选择 Configure，进入 Configure 配置菜单。<BR>&nbsp; &nbsp; X Exit<BR>&nbsp; &nbsp;&nbsp; &nbsp;Distributions<BR>&nbsp; &nbsp;&nbsp; &nbsp;Packages<BR>&nbsp; &nbsp;&nbsp; &nbsp;Root Password<BR>&nbsp; &nbsp;&nbsp; &nbsp;Fdisk<BR>&nbsp; &nbsp;&nbsp; &nbsp;Label<BR>&nbsp; &nbsp;&nbsp; &nbsp;User Management<BR>&nbsp; &nbsp;&nbsp; &nbsp;Console<BR>&nbsp; &nbsp;&nbsp; &nbsp;Time Zone<BR>&nbsp; &nbsp;&nbsp; &nbsp;Media<BR>&nbsp; &nbsp;&nbsp; &nbsp;Mouse<BR>&nbsp; &nbsp;&nbsp; &nbsp;Networking<BR>&nbsp; &nbsp;&nbsp; &nbsp;Security<BR>&nbsp; &nbsp;&nbsp; &nbsp;Startup<BR>&nbsp; &nbsp;&nbsp; &nbsp;TTYs<BR>&nbsp; &nbsp;&nbsp; &nbsp;Options<BR>&nbsp; &nbsp;&nbsp; &nbsp;HTML Docs<BR>&nbsp; &nbsp;&nbsp; &nbsp;Load KLD<BR><BR>下面，我们开始进行一些 FreeBSD 的基本配置。<BR>　　①首先，Supper User 的空密码是不安全的，我们选择 Root Passward（更改ROOT密码，一定要改！） <BR>　　②设定时区(Time Zone)：会询问你是否属于UTC时间(格林威治时间)，对于绝大部分人来说，当然选NO了，既然不是UTC时间，那系统就会让你自己选择，选择大区域，当然是5亚洲Asia，接下来选择时间区了，9是中国，然后是选1北京时间east China了，回车，接下来系统再次询问，是否属于该时区，选(Yes)。 <BR>　　③鼠标的设定(Mouse) ：一般选择“2 Enable”，系统会自动找到鼠标的。 <BR>　　④进入“Networking”(选项有：<BR>&nbsp; &nbsp; &nbsp; &nbsp; X Exit“Exit this menu (returning to previous)”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Interfaces“Configure additional network interfaces”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; AMD“This machinewants to run the auto-mounter service”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; AMD Flags“Set flags to AMD service (if enabled)”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Anon FTP“This machine wishes to allow anonymous FTP”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Gateway“This machine will route packets between interfaces”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; inetd“This machine wants to run the inet daemon”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Mail“This machine wants to run a Mail Transfer Agent”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; NFS client“This machine will be an NFS client”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; NFS server“This machine will be an NFS server”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Ntpdate“Select a clock-synchronization server”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; PCNFSD“Run authentication server for clients with PC-NFS.”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; rpcbind“RPC port mapping daemon (formerly portmapper)”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; rpc.statd“NFS status monitoring daemon”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; rpc.lockd“NFS file locking daemon”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Routed“Select routing daemon (default: routed)”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; Rwhod“This machine wants to run the rwho daemon”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; sshd“This machine wants to run the SSH daemon”、<BR>&nbsp; &nbsp; &nbsp; &nbsp; TCP Extensions“Allow RFC1323 and RFC1644 TCP extensions?”)。<BR>　　-&gt; Interfaces (网卡设定) -&gt; (开始网卡设定之前,系统会将现有的可能通讯接口列出。通常，你的网卡会是第一个位置，网卡的型号会因为网卡不同而有改变)。 <BR>　　a.请选择该网卡(lnc0 Lance/PCnet (Isolan/Novell NE2100/NE32-VL) ethernet)； <BR>　　b.是否采用IPv6 (选择“No”) ； <BR>　　c.是否采用DHCP(动态DNS) ，如果你使用 ADSL 拨号上网，这里选择 DHCP Clent ，这也是我的选择。<BR>　　d.然后分别进入一个 Host 、domain、IPv4 Gateway、Name server、IPv4 Address、Netmask 等要求输入相关信息的界面，由于我们使用的 DHCP ，这里什么也不填。<BR>　　e.显示“Would you like to bring the lnc0 interface up right now?”时选“Yes”。 <BR>　　选择“X Exit”退出到“FreeBSD Configuration Menu”配置菜单。<BR><BR>下面进入到 Xorg 的安装与配置（root权限配置） <BR>1．安装Xorg <BR>(1)通过FreeBSD光盘安装（推荐） <BR>　　在 sysinstall MainMenu 主菜单下选择： -&gt; Configure -&gt; Distributions<BR>&nbsp; &nbsp;&nbsp; &nbsp;进入 Distributions&nbsp;&nbsp;菜单，这里面有如下选项：<BR>&nbsp; &nbsp;&nbsp;&nbsp;X Exit“Exit this menu (returning to previous)”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;All“All system sources, Binaries and X Window System”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;Reset“Reset all of the below”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;base“Binary base distribution (required)”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;kernels“Binary kernel distributions (required)”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;dict“Spelling checker dictionary files”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;doc“Miscellaneous FreeBSD online docs”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;games“Games (non-commercial)”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;info“GNU info files”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;man“System manual pages - recommended”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;catman“Preformatted system manual pages”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;proflibs“Profiled versions of the libraries”、&nbsp; &nbsp;&nbsp;&nbsp;src“Sources for everything”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;ports“The FreeBSD Ports collection”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;local“Local additions collection”、<BR>&nbsp; &nbsp;&nbsp;&nbsp;X.Org“The X.Org distribution”)<BR>我们选择 X.Org ，进入到 X.org 的菜单选项，在这其中，我们把 Basic、Server和Fonts 中的内容全选，然后 “OK”确认退出。<BR>&nbsp; &nbsp;&nbsp;&nbsp;选择 ports 。（强烈建议安装上这个，FreeBSD 的有很多软件包都是通过 porst 服务器发布的，在以后你对 FreeBSD 熟悉后，你会需要安装很多的软件包，这个时候，你会觉得在这里选择安装了 ports 软件包，真的是一个英明的举动）。<BR>&nbsp; &nbsp;最后 “OK”确认， 从“Distributions”退回“Configuration”过程中会安装刚才选中的软件包。<BR><BR>(2)编译安装 <BR># cd /usr/ports/x11/xorg <BR># make install clean <BR><BR>(3)从Package安装 <BR># pkg_add -r xorg <BR><BR>&nbsp; &nbsp;安装完成后，我们再 Exit 到 sysinstall -&gt; X Exit Install。 <BR>&nbsp; &nbsp;好了，累了，我们 reboot 一下。<BR><BR>现在，我们再次进入系统了吗？<BR><BR>好了，现在，我们开始宽带接入的 ADSL 拨号配置：<BR>&nbsp; &nbsp; (1)编辑 /etc/ppp/ppp.conf <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; default: <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; set log Phase tun command <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; adsl: <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; set device PPPoE:rl0 <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; set authname 宽带帐号 <BR>&nbsp; &nbsp;&nbsp; &nbsp; set authkey 宽带密码 <BR>&nbsp; &nbsp;&nbsp; &nbsp; set dial <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; set login <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; add default HISADDR <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; enable dns <BR>&nbsp; &nbsp;&nbsp; &nbsp;(2)拔号 # ppp -ddial adsl <BR>&nbsp; &nbsp;&nbsp; &nbsp;(3)开机自动联网 <BR>&nbsp; &nbsp;&nbsp; &nbsp;配置 /etc/rc.conf,增加如下内容： <BR>&nbsp; &nbsp;&nbsp; &nbsp;#Auto dial ADSL at startup <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;ppp_enable="YES" <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;ppp_mode="ddial" <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;ppp_nat="YES" <BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;ppp_profile="adsl" <BR><BR><BR>&nbsp; &nbsp; 下一步，我们配置 xorg.conf 文件，这个文件决定了你的桌面的分辨率、刷新率、鼠标等性能。<BR>跟我来，配置Xorg ：<BR><BR>(1)在/root中生成xorg.conf.new <BR># Xorg -configure <BR>　　这个过程在你的 root 用户的根目录下生成一个基本的 Xorg 的配置文件 xorg.conf.new <BR><BR>(2)测试配置文件，以确认Xorg能够和系统上的显卡正常工作 <BR># Xorg -config xorg.conf.new <BR>　　如果能显示黑灰的格子和"X"鼠标指针，说明配置成功，Ctrl+Alt+Backspace键退出测试界面。如果配置不成功也没关系，按照下面的说明对xorg.conf.new进行调整。 <BR>(3)调整xorg.conf.new文件并测试： <BR>　　①设置显示器刷新率，加入到xorg.conf.new的"Monitor"小节中： <BR>Section "Monitor" <BR>Identifier "Monitor0" <BR>VendorName "Monitor Vendor" <BR>ModelName "Monitor Model" <BR>Horizsync 31.5-99.0 #根据自己显示器情况而定 <BR>VertRefresh 50.0-90.0 #根据自己显示器情况而定 <BR>EndSection <BR><BR>　　②设置显示器分辨率及色深，修改xorg.conf.new的"Screen"小节。 <BR><BR>Section "Screen" <BR>Identifier "Screen0" <BR>Device "Card0" <BR>Monitor "Monitor0" <BR>DefaultDepth 24 #根据自己显示器情况而定，可小到8，下同 <BR>SubSection "Display" <BR>Viewport 0 0 <BR>Depth 24 #根据自己显示器情况而定 <BR>Modes "800x600" #根据自己显示器情况而定 <BR>EndSubSection <BR>EndSection <BR><BR>　　③鼠标中键滚轮支持 <BR>在6.0之前该选项要自己设置，6.1中，如果使用Xorg -configure生成xorg.conf.new，那么该功能不需要自己配置，否则请修改xorg.conf.new中的"InputDevice"小节。 <BR><BR>Section "InputDevice" <BR>Identifier "Mouse0" <BR>Driver "mouse" <BR>Option "rotocol" "auto" <BR>Option "Device" "/dev/sysmouse" <BR>Option "ZAxisMapping" "4 5 6 7" #没有这一行请手动加上 <BR>EndSection <BR><BR>　　配置修改存盘后再进行测试，如没问题将xorg.conf.new更名为xorg.conf后拷到以下目录“/etc/X11/”： <BR># cp xorg.conf.new /etc/X11/xorg.conf <BR>　　如仍有问题可查看/var/log/xorg.0.log 然后根据提示修改。</FONT>
<P><FONT size=2>注意：如果是在虚拟机 vmware 5.x 上安装，那么你的系统的配置文件可能是如下内容（这个是经过我反复测试成功后的配置文件 xorg.conf&nbsp; 的内容）。</FONT></P>
<P>&nbsp;</P>
<DIV class=altbg2 id=code0 style="CLEAR: both; BORDER-RIGHT: #698cc3 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: #698cc3 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: 3px 2em 2em; BORDER-LEFT: #698cc3 1px solid; WORD-BREAK: break-all; PADDING-TOP: 5px; BORDER-BOTTOM: #698cc3 1px solid; FONT-FAMILY: fixedsys">Section "ServerLayout"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Identifier&nbsp; &nbsp;&nbsp;&nbsp;"X.org Configured"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Screen&nbsp; &nbsp;&nbsp; &nbsp;0&nbsp;&nbsp;"Screen0" 0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;InputDevice&nbsp; &nbsp; "Mouse0" "CorePointer"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;InputDevice&nbsp; &nbsp; "Keyboard0" "CoreKeyboard"<BR>EndSection<BR><BR>Section "Files"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;RgbPath&nbsp; &nbsp;&nbsp; &nbsp;"/usr/X11R6/lib/X11/rgb"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;ModulePath&nbsp; &nbsp;"/usr/X11R6/lib/modules"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/misc/"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/TTF/"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/Type1/"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/CID/"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/75dpi/"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;FontPath&nbsp; &nbsp;&nbsp;&nbsp;"/usr/X11R6/lib/X11/fonts/100dpi/"<BR>EndSection<BR><BR>Section "Module"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"dbe"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"dri"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"extmod"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"glx"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"record"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"xtrap"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"freetype"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Load&nbsp;&nbsp;"type1"<BR>EndSection<BR><BR>Section "InputDevice"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Identifier&nbsp;&nbsp;"Keyboard0"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Driver&nbsp; &nbsp;&nbsp; &nbsp;"kbd"<BR>EndSection<BR><BR>Section "InputDevice"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Identifier&nbsp;&nbsp;"Mouse0"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Driver&nbsp; &nbsp;&nbsp; &nbsp;"mouse"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Option&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;"Protocol" "auto"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Option&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;"Device" "/dev/sysmouse"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Option&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;"ZAxisMapping" "4 5 6 7"<BR>EndSection<BR><BR>Section "Device"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;### Available Driver options are:-<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;### Values: &lt;i&gt;: integer, &lt;f&gt;: float, &lt;bool&gt;: "True"/"False",<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;### &lt;string&gt;: "String", &lt;freq&gt;: "&lt;f&gt; Hz/kHz/MHz"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;### [arg]: arg optional<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;#Option&nbsp; &nbsp;&nbsp;&nbsp;"HWcursor"&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; # [&lt;bool&gt;]<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;#Option&nbsp; &nbsp;&nbsp;&nbsp;"NoAccel"&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;# [&lt;bool&gt;]<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Identifier&nbsp;&nbsp;"Card0"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Driver&nbsp; &nbsp;&nbsp; &nbsp;"vmware"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;VendorName&nbsp;&nbsp;"VMware Inc"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;BoardName&nbsp; &nbsp;"[VMware SVGA II] PCI Display Adapter"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;BusID&nbsp; &nbsp;&nbsp; &nbsp; "PCI:0:15:0"<BR>EndSection<BR><BR>Section "Screen"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Identifier "Screen0"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Device&nbsp; &nbsp;&nbsp;&nbsp;"Card0"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Monitor&nbsp; &nbsp; "vmware"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;1<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp;800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;4<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp;800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;8<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp; 800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;15<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp;&nbsp;&nbsp;800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;16<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp;&nbsp;&nbsp;800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;SubSection "Display"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Viewport&nbsp; &nbsp;0 0<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Depth&nbsp; &nbsp;&nbsp;&nbsp;24<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; Modes&nbsp; &nbsp; 800x600<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;EndSubSection<BR>EndSection<BR><BR># VMware SVGA<BR><BR>Section "Monitor"<BR>&nbsp; &nbsp; Identifier&nbsp;&nbsp;"vmware"<BR>&nbsp; &nbsp; VendorName "VMware, Inc"<BR>&nbsp; &nbsp; HorizSync 1-10000<BR>&nbsp; &nbsp; VertRefresh 1-10000<BR><BR>&nbsp; &nbsp; ModeLine "640x480" 100 640 700 800 900 480 500 600 700<BR>&nbsp; &nbsp; ModeLine "800x600" 100 800 900 1000 1100 600 700 800 900<BR>&nbsp; &nbsp; ModeLine "1024x768" 100 1024 1100 1200 1300 768 800 900 1000<BR>&nbsp; &nbsp; ModeLine "1152x864" 100 1152 1200 1300 1400 864 900 1000 1100<BR>&nbsp; &nbsp; ModeLine "1152x900" 100 1152 1200 1300 1400 900 1000 1100 1200<BR>&nbsp; &nbsp; ModeLine "1280x1024" 100 1280 1300 1400 1500 1024 1100 1200 1300<BR>&nbsp; &nbsp; ModeLine "1376x1032" 100 1376 1400 1500 1600 1032 1100 1200 1300<BR>&nbsp; &nbsp; ModeLine "1600x1200" 100 1600 1700 1800 1900 1200 1300 1400 1500<BR>&nbsp; &nbsp; ModeLine "2364x1773" 100 2364 2400 2500 2600 1773 1800 1900 2000<BR>EndSection<BR><BR>Section "Device"<BR>&nbsp; &nbsp; Identifier&nbsp;&nbsp;"VMware SVGA"<BR>&nbsp; &nbsp; Driver&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;"vmware"<BR>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<BR>EndSection</DIV><FONT size=2>
<DIV><BR><BR>下面进入到了最激动人心的过程—&gt;桌面环境的安装配置（Gnome2.6.12） (root权限配置) <BR><BR>1．Gnome安装 <BR>　　再次输入 sysinstall 进入 sysinstall Main Menu 安装主菜单。<BR>　　sysinstall -&gt; Configure -&gt; Packages -&gt; 1 CD/DVD -&gt; gnome -&gt; 选择“gnome2-2.6.12”时其它选项自动关联(仅剩“xchat2-2.6.1_1”项也可选上) -&gt; 按Tab键选OK再回车返回“Package Selection” <BR>&nbsp; &nbsp;然后选择 “linux”，把 linux basic 包也装上（以后，有很多的 linux 应用软件需要这个包的支持）。<BR>&nbsp; &nbsp;在“Package Selection”窗口按Tab键选“Install”开始安装软件包。<BR>&nbsp; &nbsp;从“Distributions”退回“Configuration”过程中会安装刚才选中的软件包，此时安装时间较长，最后回到“FreeBSD configuration Menu” -&gt; 最后退出sysinstall。 <BR><BR>2．配置 gnome 的启动文件。<BR>&nbsp; &nbsp;vi .xinitrc<BR>&nbsp; &nbsp;&nbsp;&nbsp;在其中的最后一行加入 <BR>&nbsp; &nbsp;"exec&nbsp;&nbsp;/usr/local/bin/gnome-session"<BR>&nbsp; &nbsp; （注意，如果你使用KDE，则加入"exec /usr/local/bin/startkde"） <BR><BR>3．startx 即可启动桌面，但此时的Gnome是英文的。 <BR><BR>4．中文本地化设置。<BR>(1)在/etc/login.conf中最后，加入以下部分 <BR># <BR>#Chinese Users Accounts. <BR># <BR>chinese|Chinese Users Accounts:\ <BR>:charset=eucCN:\ <BR>:lang=zh_CN.eucCN:\ <BR>:tc=default: <BR><BR>(2)执行以下命令 <BR>#cap_mkdb /etc/login.conf <BR><BR>(3)用vipw修改登入类型，针对相应用用户进行修改，修改格式参照如下内容： <BR>root1$lOOD78Dm$oSG5u21RGrXoC.TTJ3nCs.:0:0:chinese:0:0:Charlie &amp;:/root:/bin/csh <BR>关键是在相应位置加入"chinese","chinese"是和第1步的设置对应的。 <BR>保存退出。<BR><BR>(4)重新登入后执行startx，进入的Gnome便是全中文的了。 <BR>---------------------------------------------------------------------------------------- <BR>下面，我们将使用Windows下的Simsun字体进行中文字体美化 <BR>　　在 /usr/X11R6/lib/X11/fonts/下建立一个"TrueType"目录，将Windows下的simsun.ttc改名为simsun.ttf后拷贝到 /usr/X11R6/lib/X11/fonts/TrueType下重建字体缓存 fc-cache -fv <BR>　　然后在GNOME中设置字体，在字体细节中调整：“平滑”选无，“微调”选轻微，“次象素顺序”选RGB。 <BR><BR>最后设置在开机即进入图形登录界面登录 （这里我选择的是 GDM 方式）<BR>修改/etc/rc.conf,加入以下内容 <BR>gdm_enable="YES" <BR>　　经过以上设置应该就有了一个漂亮的中文桌面系统了。 <BR><BR>经过以上设置，我们就可以了吗？？？还不行，我们还要加入中文输入法，在这里，我选择了 scim 输入法。<BR><BR>在 scim 输入法安装之前，我们还得做一个工作：把我们的安装软件所需要申请 ports 服务的服务器指向最快的那些 ports 服务器，否则，你的安装过程将无法忍受。<BR><BR>修改 /etc/make.conf 文件，在其中的最后部分加入如下语句：<BR><BR>MASTER_SITE_OVERRIDE= \<BR></FONT><A href="ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp4.tw.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp10.tw.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp10.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp13.tw.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp13.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp3.jp.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp3.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp5.jp.freebsd.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp5.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp.jaist.ac.jp/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp.jaist.ac.jp/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR} \<BR></FONT><A href="ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/$" target=_blank><FONT color=#000000 size=2>ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/$</FONT></A><FONT size=2>{DIST_SUBDIR}<BR><BR>（以上的 ports 服务器地址是我从论坛中搜索来的，感谢前面的大牛无私的奉献）<BR><BR>下面开始我们的 scim 输入法的安装配置 (root权限配置) <BR>(1)SCIM安装 <BR>&nbsp; &nbsp;安装拼音输入法 <BR># cd /usr/ports/chinese/scim-pinyin <BR># make install clean <BR>&nbsp; &nbsp; 安装五笔输入法 <BR># /usr/ports/chinese/scim-tables <BR># make insall clean <BR><BR>(2)scim 输入法的环境变量配置<BR>①查看当前的locale设置： <BR>locale <BR>②查看你使用的shell: <BR>echo $0 或 cat /etc/passwd <BR>③如果使用的Shell是bash或sh： <BR>请编辑 ~/.profile 文件，在其中的最后，输入如下参数：<BR>export LANG=zh_CN.eucCN <BR>export LC_CTYPE=zh_CN.eucCN <BR>export XMODIFIERS='@im=scim' <BR>export GTK_IM_MODULE=scim<BR><BR>④如果使用的Shell是csh或tcsh： <BR>请编辑 ~/.cshrc 文件，在其中加入如下参数：<BR>setenv LANG zh_CN.eucCN <BR>setenv LC_CTYPE zh_CN.eucCN <BR>setenv XMODIFIERS @im=scim <BR>setenv GTK_IM_MODULE scim <BR><BR>(3)在~/.xinitrc中的 exec /usr/local/bin/gnome-session&nbsp;&nbsp;行之前加入如下语句：<BR><BR>execl /usr/local/bin/scim -d &amp;<BR><BR>　　（注意：如果在X下操作，记得重启X。简单一点按Ctrl+Alt+BackSpace <BR>如果您使用了 gdm ，在系统启动时直接进入到图形界面状态下，那么请注意，gdm 并不会读取 .xinitrc 文件的内容，此时请注意修改 ~/.profile 文件，在其中加入如下内容：<BR>export LANG=zh_CN.eucCN<BR>export LC_CTYPE=zh_CN.eucCN<BR>export XMODIFIERS='@im=scim'<BR>export GTK_IM_MODULE=scim<BR>）。<BR><BR>下面，我们开始安装声卡的驱动 <BR>　　最简单的方式就是修改/boot/defaults/loader.conf文件中的“Sound modules”部分，把相应声卡的驱动Load上即可，但为了修改，我们首先必须知道自己的声卡类型，有难度吗？别急，跟我来。<BR>首先执行：<BR>kldload snd_driver<BR>#这是个 meta 驱动，一次加载了最常见的设备驱动。 这会提高搜索正确驱动的速度。<BR>然后dmesg | grep pcm<BR><BR>pcm0: &lt;Intel ICH2 (82801BA)&gt;; port 0xe000-0xe03f,0xdc00-0xdcff irq 11 at device 31.5 on pci0<BR>pcm0: &lt;Analog Devices AD1881A AC97 Codec&gt;;<BR><BR>声卡的状态可以通过 /dev/sndstat 文件来查询：<BR><BR># cat /dev/sndstat<BR>FreeBSD Audio Driver (newpcm)<BR>Installed devices:<BR>pcm0: &lt;Intel ICH2 (82801BA)&gt;; at io 0xdc00, 0xe000 irq 11 bufsz 16384 kld snd_ich (1p/1r/0v channels duplex default)<BR><BR>说明该声卡的类型为：snd_ich<BR><BR>#vi /boot/defaults/loader.conf <BR>修改：snd_ich_load="NO" #intel Tch&nbsp;&nbsp;这一行，<BR>改成：snd_ich_load="YES" #intel Tch<BR><BR>例如，我的声卡在执行 # cat /dev/sndstat 后，显示为 snd_es173x<BR>则找到 /boot/defaults/loader.conf 文件中的 ##############################################################<BR>###&nbsp;&nbsp;Sound modules&nbsp;&nbsp;##########################################<BR>##############################################################<BR>小节，在这个小节中，有一个 snd_es173x_load = "NO" ，修改成 snd_es173x_load = "YES"<BR>(注意：如果在声卡驱动的这个小节，没有发现你的声卡类型，也可以手工自己加入一行，内容为<BR>你的声卡类型_load = "YES" )<BR><BR>下面，我们已经基本可以使用了，但这样就满足了吗？不行，我们接着来。<BR>接着我们要在控制台下实现中文化。<BR>&nbsp; &nbsp; 进入 /usr/ports/chinese/cce 目录，在其下输入 make install clean 命令进行安装。<BR>安装完成后，在 .cshrc 文件中设置如下内容：<BR>alias vi 'env LC_CTYPE=en_US.ISO8859-1 vi'<BR>（这个定义是为了我们在使用 vi 时能正确输入和识别中文。）<BR>setenv LANG zh_CN.eucCN<BR>setenv LC_CTYPE zh_CN.eucCN<BR><BR>当需要使用汉字环境的时候，输入 cce 启动汉字环境。退出汉字环境时请输入 exit 。<BR><BR>下面，我们该开始 Gaim 及时通讯工具的安装的安装了。<BR>&nbsp; &nbsp; 进入 /usr/ports/net-im/gaim-openq 目录，在其目录下输入 make install clean 进行安装。<BR><BR>有人会说了，Gaim 不能使用了，腾讯已经把登录服务器的协议改了， Gaim 登录不进去了，别担心，我们得感谢 FreeBSD ，他们及时给我们提供了 openq-2006 的补丁插件。</FONT><BR></DIV>]]></description>
</item><item>
<title><![CDATA[freebsd 6.2 安装配置笔记]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27227</link>
<author>jdilt</author>
<pubDate>2007/8/13 13:56:46</pubDate>
<description><![CDATA[
<P>freebsd 6.2 安装配置笔记</P>
<P>#最小化安装后….<BR>sysinstall,改口令,时区,src-sys,ports,man,Xorg, bash3,cvsup-without-gui,lynx,linux,unzip<BR>并设置网卡,sshd服务</P>
<P>++开启sshd服务<BR>vi /etc/ssh/sshd_config ,加入以下行<BR>PermitRootLogin yes<BR>退出后重启服务即可 /etc/rc.d/sshd restart</P>
<P>++csh改bash<BR>chfn -s /usr/local/bin/bash username</P>
<P>++开机自动启动gnome<BR>echo "exec /usr/local/bin/gnome-session" &gt;/root/.xinitrc<BR>在/etc/rc.conf 加入 gdm_enable="YES"</P>
<P>###++更新cvsup (第二次安装时没有更新cvsup,我只是用来做桌面系统而已)<BR>###cd /usr/share/examples/cvsup<BR>###编辑ports-supfile<BR>###*default host=cvsup.FreeBSDChina.org <BR>###cvsup -g -L 2 ports-supfile</P>
<P>++使用wget/axel加速你的port下载<BR>通过修改make.conf实现<BR>#FETCH_CMD=proz -s -k 5 –no-curses<BR>FETCH_CMD= wget -c -t 1 <BR>DISABLE_SIZE=yes</P>
<P>++选择快的 ports 服务器<BR>修改 /etc/make.conf 文件，在其中的最后部分加入如下语句：<BR>MASTER_SITE_OVERRIDE= \<BR><A href="ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/$%7BDIST_SUBDIR">ftp://ftp.FreeBSDChina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR</A>} \<BR><A href="ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/$%7BDIST_SUBDIR">ftp://ftp.FreeBSDChina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR</A>} \<BR><A href="ftp://ftp.cn.freebsd.org/pub/FreeBSD/ports/distfiles/$%7BDIST_SUBDIR">ftp://ftp.cn.freebsd.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR</A>} \<BR><A href="ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/$%7BDIST_SUBDIR">ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR</A>} \</P>
<P>++安装常用软件,pkg_add和make两种安装方法请开两个终端来安装<BR>mkdir /usr/ports/distfiles/pkg<BR>export&nbsp; PACKAGESITE=ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/ <BR>export PKGDIR=/usr/ports/distfiles/pkg <BR>#export PACKAGESITE=ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/ <BR>#pkg_add -K参数可以将tbz源保存到$PKGDIR目录下,根据需要使用此参数<BR>pkg_add -rK wget prozilla&nbsp; gaim gaim-openq eva vsftpd gftp xpdf rdesktop stardict zh-stardict2-dict-zh_CN <BR>compupic gthumb&nbsp; zh-fcitx xchm.tbz zh-unrar<BR>firefox2(6-stable源是3.0版本) fusefs-libs fusefs-kmod </P>
<P>++安装多媒体<BR>下载下面的包,并安装<BR><A href="http://ftp.br.freebsd.org/local/packages/audio/lame-3.97_1.tbz">http://ftp.br.freebsd.org/local/packages/audio/lame-3.97_1.tbz</A><BR><A href="ftp://ftp.nsysu.edu.tw/FreeBSD/ports/i386/packages-5-stable/All/win32-codecs-3.1.0.p7_2,1.tbz">ftp://ftp.nsysu.edu.tw/FreeBSD/ports/i386/packages-5-stable/All/win32-codecs-3.1.0.p7_2,1.tbz</A><BR>pkg_add -rK zh-xmms xmms-wma mplayer mplayer-fonts zh-mplayer-fonts kmplayer xine beep-media-player bmp-extra-plugins <BR>aumix #音量控制<BR>++xmms播放列表解决方法<BR>打开xmms，然后，[首选项]–&gt;[字体],将playlist变成：-misc-simsun-medium-r-normal-*-*-120-*-*-p-*-gb2312.1980-0",*-r-*</P>
<P>++安装声卡的驱动<BR>kldload snd_driver&nbsp;&nbsp;&nbsp; #一次加载了最常见的设备驱动<BR>dmesg | grep pcm<BR>cat /dev/sndstat,得到信息格式如下<BR>FreeBSD Audio Driver (newpcm)<BR>Installed devices:<BR>pcm0: ; at io 0xdc00, 0xe000 irq 11 bufsz 16384 kld snd_ich (1p/1r/0v channels duplex default)<BR>说明该声卡的类型为：snd_ich<BR>#vi /boot/defaults/loader.conf<BR>修改：snd_ich_load="NO" #intel Tch 这一行，<BR>改成：snd_ich_load="YES" #intel Tch<BR>(注意：如果在声卡驱动的这个小节，没有发现你的声卡类型，也可以手工自己加入一行，内容为<BR>你的声卡类型_load = "YES" )<BR>或直接在内核编译来支持声卡。 <BR>device sound <BR>device snd_ich</P>
<P>++定制内核<BR>/stand/sysinstall–&gt;Configure–&gt;Distributions–&gt;src–&gt;sys<BR>安装后应该有/usr/src/sys文件夹<BR>/boot/kernel/kernel #内核文件<BR>cd /usr/src/sys/i386/conf &amp;&amp;&nbsp; cp GENERIC GENERIC.bak<BR>vi GENERIC #根据文档注释修改即可,不需要的行首加#<BR>#cpu&nbsp;&nbsp;I486_CPU<BR>#cpu&nbsp;&nbsp;I586_CPU<BR>cpu&nbsp;&nbsp;I686_CPU<BR>ident&nbsp;&nbsp;NEWKER&nbsp;&nbsp;\\这里改成你内核的新名字<BR>options SC_DISABLE_REBOOT&nbsp; &nbsp;\\在控制台禁用CTRL+ALT+DEL键<BR>\\加入防火墙<BR>options&nbsp; &nbsp; IPFIREWALL<BR>options&nbsp; &nbsp; IPFIREWALL_VERBOSE<BR>options&nbsp; &nbsp; IPFIREWALL_VERBOSE_LIMIT=5<BR>options TCP_DROP_SYNFIN<BR>\\下面这两条不加 apache2有点问题<BR>options ACCEPT_FILTER_DATA<BR>options ACCEPT_FILTER_HTTP<BR># PCI Ethernet NICs. #将这一部分的其它网卡型号注释掉,仅保留当前网卡驱动即可<BR>device&nbsp;&nbsp;miibus&nbsp;&nbsp;# MII bus support&nbsp; \\保留<BR>/usr/sbin/config GENERIC #产生内核源代码<BR>cd ../compile/GENERIC<BR>make depend &amp;&amp; make &amp;&amp; make install<BR>或#make buildkernel KERNCONF=NEWKER&nbsp;&nbsp;<BR>&nbsp; #make installkernel KERNCONF=NEWKER </P>
<P>++配置防火墙<BR>/etc/rc.conf<BR>\\加入以下内容<BR>firewall_enable="YES"<BR>firewall_script="/etc/rc.firewall"<BR>firewall_type="/etc/ipfw.rules"&nbsp; &nbsp;\\这是防火墙自定义脚本<BR>firewall_quiet="NO"<BR>firewall_logging_enable="YES"<BR>log_in_vain="NO"<BR>tcp_drop_synfin="NO"<BR>tcp_restrict_rst="YES"<BR>icmp_drop_redirect="YES"<BR>保存退出<BR>vi /etc/ipfw.rules<BR>\\ 大家注意 -q 前面要加一个空格<BR>-q -f flush<BR>-q add 00301 allow all from any to any via lo0<BR>-q add 00302 check-state<BR>-q add 00303 allow tcp from any to 10.72.255.131 53 out via vr0 setup keep-state&nbsp;&nbsp;\\ 10.72.255.131 是DNS地址,大家根据本地的改下<BR>-q add 00400 allow udp from any to 10.72.255.131 53 out via vr0 keep-state&nbsp; &nbsp;&nbsp;&nbsp;\\&nbsp;&nbsp;vr0 是我网卡的名称,大家根据己的改,以下都是一样<BR>-q add 00500 allow tcp from any to any 80 in via vr0 setup keep-state<BR>-q add 00900 allow tcp from any to any 25 out via vr0 setup keep-state<BR>-q add 01200 allow tcp from any to any via vr0 setup keep-state uid root<BR>-q add 01300 allow icmp from any to any in via vr0&nbsp;&nbsp;keep-state<BR>-q add 01400 allow tcp from any to any 21 in via vr0 setup keep-state<BR>-q add 01500 allow tcp from any to me&nbsp;&nbsp;21 in via vr0 setup limit src-addr 2<BR>-q add 01600 allow tcp from any to any 22 in via vr0 setup keep-state<BR>-q add 01800 allow tcp from any to me&nbsp;&nbsp;22 in via vr0 setup limit src-addr 2<BR>保存退出</P>
<P>++中文字体<BR>将xp上simsun.ttc tahoma.ttf拷至/usr/X11R6/lib/X11/fonts/TTF/,并改扩展名为ttf<BR>fc-cache -fv</P>
<P>++配置fcitx<BR>cd /usr/ports/chinese/fcitx<BR>make install clean<BR>在~/.profile 文件中加以下三行 #因我用的是bash<BR>export LANG="zh_CN.eucCN"<BR>export LC_CTYPE="zh_CN.eucCN"<BR>export <A href="mailto:XMODIFIERS=%27@im=fcitx%27">XMODIFIERS='@im=fcitx'</A></P>
<P>++vim配置<BR>cd /usr/ports/editors/vim&nbsp; &amp;&amp; make install clean #安装vim<BR>cp /usr/local/share/vim/vim70/vimrc_example.vim ~/.vimrc<BR>编辑.vimrc,注释掉" set nocompatible行</P>
<P>++安装ntfs写支持<BR>安装 Kernel source<BR>手工下载软件包<BR><A href="http://ftp.lv.freebsd.org/pub/FreeBSD/ports/packages/Latest/fusefs-ntfs.tbz">http://ftp.lv.freebsd.org/pub/FreeBSD/ports/packages/Latest/fusefs-ntfs.tbz</A> <BR>pkg_add path/fusefs-ntfs.tbz</P>
<P>++JAVA环境安装<BR>1.open <A href="http://www.sun.com/software/java2/download.html">http://www.sun.com/software/java2/download.html</A>, download the SCSL Source file,jdk-1_5_0-src-scsl.zip and the SCSL Binaries file, jdk-1_5_0-bin-scsl.zip .<BR>2.In addition, please download the patchset, bsd-jdk15-patches-3.tar.bz2, from <A href="http://www.eyesbeyond.com/freebsddom/java/jdk15.html">http://www.eyesbeyond.com/freebsddom/java/jdk15.html</A>.<BR>3.manually fetch the J2SE SDK self-extracting file for the Linux platform (j2sdk-1_4_2_12-linux-i586.bin) from <A href="http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&amp;PartDetailId=j2sdk-1.4.2_12-oth-JPR&amp;SiteId=JSC&amp;TransactionId=noreg">http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&amp;PartDetailId=j2sdk-1.4.2_12-oth-JPR&amp;SiteId=JSC&amp;TransactionId=noreg</A><BR>4.Please place the downloaded file(s) in /usr/ports/distfiles<BR>pkg_add -rK m4&nbsp; <BR>pkg_add -rK zip </P>
<P>++vsftpd配置<BR>编辑 /usr/local/etc/vsftpd.conf加入三行<BR>listen=YES<BR>ftp_username=ftp<BR>local_enable=YES<BR>anon_upload_enable=YES<BR>anon_mkdir_write_enable=YES<BR>write_enable=YES</P>
<P>++linux下fdisk工具<BR>pkg_add -rK linuxfdisk</P>
<P>===其它===<BR>++挂设备<BR>mount_cd9660 -C gbk /dev/acd0 /mnt/cdrom #加-C eucCN为了显示中文文件名<BR>mount_msdosfs&nbsp; #fat<BR>mount_ntfs&nbsp;&nbsp;&nbsp;&nbsp; #ntfs</P>
<P>++如何以关键字搜寻 ports<BR>cd /usr/ports/<BR>make search key=ldap<BR>make search name=ldap&nbsp; #知道软件名用这个</P>
<P>make fetch-recursive</P>]]></description>
</item><item>
<title><![CDATA[VI指令摘要]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=27152</link>
<author>jdilt</author>
<pubDate>2007/8/9 16:42:46</pubDate>
<description><![CDATA[
<P>一. 光标移动指令<BR>&nbsp;&nbsp;&nbsp; 01. h：向左移动一个字符<BR>&nbsp;&nbsp;&nbsp; 02. l：向右移动一个字符<BR>&nbsp;&nbsp;&nbsp; 03. j：向下移动一行<BR>&nbsp;&nbsp;&nbsp; 04. k：向上移动一行</P>
<P>&nbsp;&nbsp;&nbsp; 05. 0：移动到当前行最前面<BR>&nbsp;&nbsp;&nbsp; 06. $：移动到当前行最后面<BR>&nbsp;&nbsp;&nbsp; 07. ^：移动到当前行第一个非空白字符</P>
<P>&nbsp;&nbsp;&nbsp; 08. b：向左移动到下一个单词的第一个字符<BR>&nbsp;&nbsp;&nbsp; 09. w：向右移动到下一个单词的第一个字符<BR>&nbsp;&nbsp;&nbsp; 10. e：向右移动到下一个单词的最后一个字符<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp; 11. H：移动到当前页第一行<BR>&nbsp;&nbsp;&nbsp; 12. M：移动到当前页中间行<BR>&nbsp;&nbsp;&nbsp; 13. L：移动到当前页最后行<BR>&nbsp;&nbsp;&nbsp; 14. Ctrl + f：向下翻页<BR>&nbsp;&nbsp;&nbsp; 15. Ctrl + b：向上翻页<BR>&nbsp;&nbsp;&nbsp; 16. Ctrl + d：向下翻半页<BR>&nbsp;&nbsp;&nbsp; 17. Ctrl + u：向上翻半页</P>
<P>&nbsp;&nbsp;&nbsp; 18. n-：向上移动n行<BR>&nbsp;&nbsp;&nbsp; 19. n+：向下移动n行<BR>&nbsp;&nbsp;&nbsp; 20. nG：移动到第n行（n为0表示移动到最后一行）<BR>&nbsp;&nbsp;&nbsp; 21. fx：向右移动到x字符上<BR>&nbsp;&nbsp;&nbsp; 22. Fx：向左移动到x字符上<BR>&nbsp;&nbsp;&nbsp; 23. tx：向右移动到x字符前<BR>&nbsp;&nbsp;&nbsp; 24. Tx：向左移动到x字符前<BR>&nbsp;&nbsp;&nbsp; 25. ;：重复上一次f或t操作<BR>&nbsp;&nbsp;&nbsp; 26. ,：反向重复上一次f或t操作<BR>&nbsp;&nbsp;&nbsp; 27. /string：向右移动到string上<BR>&nbsp;&nbsp;&nbsp; 28. ?string：向左移动到string上<BR>&nbsp;&nbsp;&nbsp; 29. n：重复上一次/或?操作<BR>&nbsp;&nbsp;&nbsp; 30. N：反向重复上一次/或?操作<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; 31. n(：向左移动n个句子（句子以.?!划分）<BR>&nbsp;&nbsp;&nbsp; 32. n)：向右移动n个句子<BR>&nbsp;&nbsp;&nbsp; 33. n{：向左移动n个段落（段落以空白行划分）<BR>&nbsp;&nbsp;&nbsp; 34. n}：向右移动n个段落<BR>&nbsp;&nbsp;&nbsp; <BR>二. 编辑指令<BR>&nbsp;&nbsp;&nbsp; 01. a：从光标所在位置后面开始追加内容<BR>&nbsp;&nbsp;&nbsp; 02. A：从光标所在行后面开始追加内容<BR>&nbsp;&nbsp;&nbsp; 03. i：从光标所在位置前面开始插入内容<BR>&nbsp;&nbsp;&nbsp; 04. I：从光标所在行前面开始插入内容<BR>&nbsp;&nbsp;&nbsp; 05. o：从光标所在行下面开始新增一行<BR>&nbsp;&nbsp;&nbsp; 06. O：从光标所在行上面开始新增一行<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; 07. x：删除光标所在位置字符<BR>&nbsp;&nbsp;&nbsp; 08. r：替换光标所在位置的字符，r后紧跟要替换的字符<BR>&nbsp;&nbsp;&nbsp; 09. R：替换光标所在的行，直到键入Esc为止<BR>&nbsp;&nbsp;&nbsp; 10. s：删除光标所在位置的字符，并进入输入模式<BR>&nbsp;&nbsp;&nbsp; 11. S：删除光标所在的行，并进入输入模式<BR>&nbsp;&nbsp;&nbsp; 12. u：恢复上一次修改<BR>&nbsp;&nbsp;&nbsp; 13. U：恢复光标所在行的所有修改<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; 14. d（删除）、p（复制）c（修改）：这三个指令分别与前面介绍过的e、w、b、$、0、)、(、}、{组合代表在某一范围内的具体操作<BR>&nbsp;&nbsp;&nbsp; 15. p：粘贴<BR>&nbsp;&nbsp;&nbsp; 16. D：删除光标所在位置到该行结束<BR>&nbsp;&nbsp;&nbsp; 17. dd：删除光标所在行<BR>&nbsp;&nbsp;&nbsp; 18. cc：删除光标所在行，并进入输入模式<BR>&nbsp;&nbsp;&nbsp; 19. yy：复制光标所在行<BR>&nbsp;&nbsp;&nbsp; 20. v：选定操作范围<BR>&nbsp;&nbsp;&nbsp; <BR>三. 退出指令<BR>&nbsp;&nbsp;&nbsp; 01. :q：在没有任何修改的情况下退出<BR>&nbsp;&nbsp;&nbsp; 02. :q!：放弃已经作出的修改并退出<BR>&nbsp;&nbsp;&nbsp; 03. :w：保存修改<BR>&nbsp;&nbsp;&nbsp; 04. :wq：保存修改并退出<BR>&nbsp;&nbsp;&nbsp; 05. :x：保存修改并退出&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[VI命令收集]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26898</link>
<author>jdilt</author>
<pubDate>2007/7/31 16:16:24</pubDate>
<description><![CDATA[&nbsp;&nbsp;&nbsp; vi 的工作模式<BR>　　<BR>　　Vi 在初始启动后首先进入编辑模式，这时用户可以利用一些预先定义的按键来移动光标、删除文字、复制或粘贴文字等。这些按键均是普通的字符，例如 l 是向右移动光标，相当于向右箭头键，k 是向下移动光标，相当于向下箭头键。在编辑模式下，用户还可以利用一些特殊按键选定文字，然后 再进行删除、或复制等操作。 <BR>　　<BR>　　当用户在编辑模式下键入 i, a, o 等命令之后，可进入插入模式；键入 : 可进入命名模式。 在插入模式下，用户随后输入的，除 Esc 之外的任何字符均将被看成是插入到编辑缓冲区中 的字符。按 Esc 之后，从插入模式切换到编辑模式。 <BR>　　<BR>　　在命令模式，Vi 将把光标挪到屏幕的最下方，并在第一个字符的位置显示一个 :（冒号）。这时， 用户就可以键入一些命令。这些命令可用来保存文件、读取文件内容、执行 Shell 命令、设置 Vi 参数、以正则表达式的方式查找字符串或替换字符串等。 <BR>　　<BR>　　编辑模式<BR>　　<BR>　　移动光标<BR>　　<BR>　　要对正文内容进行修改，首先必须把光标移动到指定位置。移动光标的最简单的方式是按键盘的上、下、左、右箭头键。除了这种最原始的方法之外，用户还可以利用 vi 提供的众多字符组合键，在正文中移动光标，迅速到达指定的行或列，实现定位。例如：<BR>　　k、j、h、l 功能分别等同于上、下、左、右箭头键<BR>　　Ctrl+b 在文件中向上移动一页（相当于 PageUp 键）<BR>　　Ctrl+f 在文件中向下移动一页（相当于 PageDown 键）<BR>　　H 将光标移到屏幕的最上行（Highest）<BR>　　nH 将光标移到屏幕的第 n 行<BR>　　2H 将光标移到屏幕的第 2 行<BR>　　M 将光标移到屏幕的中间（Middle）<BR>　　L 将光标移到屏幕的最下行（Lowest）<BR>　　nL 将光标移到屏幕的倒数第 n 行<BR>　　3L 将光标移到屏幕的倒数第 3 行<BR>　　w 在指定行内右移光标，到下一个字的开头<BR>　　e 在指定行内右移光标，到一个字的末尾<BR>　　b 在指定行内左移光标，到前一个字的开头<BR>　　0 数字0，左移光标，到本行的开头<BR>　　$ 右移光标，到本行的末尾<BR>　　^ 移动光标，到本行的第一个非空字符<BR>　　<BR>　　替换和删除<BR>　　<BR>　　将光标定位于文件内指定位置后，可以用其他字符来替换光标所指向的字符，或从当前光标位置删除一个或多个字符。例如：<BR>　　rc 用 c 替换光标所指向的当前字符<BR>　　nrc 用 c 替换光标所指向的前 n 个字符<BR>　　5rc 用 c 替换光标所指向的前 5 个字符<BR>　　x 删除光标所指向的当前字符<BR>　　nx 删除光标所指向的前 n 个字符<BR>　　3x 删除光标所指向的前 3 个字符<BR>　　dw 删除光标右侧的字<BR>　　ndw 删除光标右侧的 n 个字<BR>　　3dw 删除光标右侧的 3 个字<BR>　　db 删除光标左侧的字<BR>　　ndb 删除光标左侧的 n 个字<BR>　　5db 删除光标左侧的 5 个字<BR>　　dd 删除光标所在行，并去除空隙<BR>　　ndd 删除 n 行内容，并去除空隙<BR>　　3dd 删除 3 行内容，并去除空隙<BR>　　dd 删除当前行内容<BR>　　dn+向下键删除当前行以及往下n行<BR>　　dn+向上键删除当前行以及往上n行<BR>　　按下R后，开始根据按键字符依次替换文本内容，直到按下ESC。<BR>　　<BR>　　粘贴和复制<BR>　　<BR>　　从正文中删除的内容（如字符、字或行）并没有真正丢失，而是被剪切并复制到了一个内存缓冲区中。用户可<BR>　　将其粘贴到正文中的指定位置。完成这一操作的命令是：<BR>　　p 小写字母 p，将缓冲区的内容粘贴到光标的后面<BR>　　P 大写字母 P，将缓冲区的内容粘贴到光标的前面<BR>　　如果缓冲区的内容是字符或字，直接粘贴在光标的前面或后面；如果缓冲区的内容为整行正文，则粘贴在当前光标所在行的上一行或下一行。<BR>　　注意上述两个命令中字母的大小写。vi 编辑器经常以一对大、小写字母（如 p 和 P）来提供一对相似的功能。通常，小写命令在光标的后面进行操作，大写命令在光标的前面进行操作。<BR>　　有时需要复制一段正文到新位置，同时保留原有位置的内容。这种情况下，首先应当把指定内容复制（而不是剪切）到内存缓冲区。完成这一操作的命令是：<BR>　　yy 复制当前行到内存缓冲区<BR>　　nyy 复制 n 行内容到内存缓冲区<BR>　　5yy 复制 5 行内容到内存缓冲区<BR>　　<BR>　　搜索字符串<BR>　　<BR>　　和许多先进的编辑器一样，vi 提供了强大的字符串搜索功能。要查找文件中指定字或短语出现的位置，可以用 vi 直接进行搜索，而不必以手工方式进行。搜索方法是：键入字符 / ，后面跟以要搜索的字符串，然后按回车键。编辑程序执行正向搜索（即朝文件末尾方向），并在找到指定字符串后，将光标停到该字符串的开头；键入 n 命令可以继续执行搜索，找出这一字符串下次出现的位置。用字符 ? 取代 / ，可以实现反向搜索（朝文件开头方向）。例如：<BR>　　/str1 正向搜索字符串 str1<BR>　　n 继续搜索，找出 str1 字符串下次出现的位置<BR>　　?str2 反向搜索字符串 str2<BR>　　无论搜索方向如何，当到达文件末尾或开头时，搜索工作会循环到文件的另一端并继续执行。<BR>　　<BR>　　撤销和重复<BR>　　<BR>　　在编辑文档的过程中，为消除某个错误的编辑命令造成的后果，可以用撤消命令。另外，如果用户希望在新的光标位置重复前面执行过的编辑命令，可用重复命令。<BR>　　u 撤消前一条命令的结果<BR>　　. 重复最后一条修改正文的命令<BR>　　Alt + u 撤消前一条命令的结果<BR>　　<BR>　　6. 文本选中<BR>　　<BR>　　vi 可进入到一种成为 Visual 的模式，在该模式下，用户可以用光标移动命令可视地选择文本，然后再 执行其他编辑操作，例如删除、复制等。 v 字符选中命令 V 行选中命令 <BR>　　<BR>　　插入模式<BR>　　<BR>　　进入插入模式<BR>　　<BR>　　在编辑模式下正确定位光标之后，可用以下命令切换到插入模式：<BR>　　i或者insert 在光标左侧输入正文<BR>　　a 在光标右侧输入正文<BR>　　o 在光标所在行的下一行增添新行<BR>　　O 在光标所在行的上一行增添新行<BR>　　I 在光标所在行的开头输入正文<BR>　　A 在光标所在行的末尾输入正文<BR>　　上面介绍了几种切换到插入模式的简单方法。另外还有一些命令，它们允许在进入插入模式之前首先删去一段正文，从而实现正文的替换。这些命令包括：<BR>　　s 用输入的正文替换光标所指向的字符<BR>　　ns 用输入的正文替换光标右侧 n 个字符<BR>　　cw 用输入的正文替换光标右侧的字<BR>　　ncw 用输入的正文替换光标右侧的 n 个字<BR>　　cb 用输入的正文替换光标左侧的字<BR>　　ncb 用输入的正文替换光标左侧的 n 个字<BR>　　cd 用输入的正文替换光标的所在行<BR>　　ncd 用输入的正文替换光标下面的 n 行<BR>　　c$ 用输入的正文替换从光标开始到本行末尾的所有字符<BR>　　c0 用输入的正文替换从本行开头到光标的所有字符<BR>　　<BR>　　退出插入模式<BR>　　<BR>　　退出插入模式的方法是，按 ESC 键或组合键Ctrl+[ 。<BR>　　<BR>　　命令模式<BR>　　<BR>　　在 vi 的命令模式下，可以使用复杂的命令。在编辑模式下键入“:”，光标就跳到屏幕最后一行，并在 那里显示冒号，此时已进入命令模式。命令模式又称“末行模式”，用户输入的内容均显示在屏幕的最后 一行，按回车键，vi 执行命令。 <BR>　　<BR>　　退出命令<BR>　　<BR>　　在编辑模式下可以用 ZZ 命令退出 vi 编辑程序，该命令保存对正文所作的修改，覆盖原始文件。如果只需要退出编辑程序，而不打算保存编辑的内容，可用下面的命令：<BR>　　: q 在未作修改的情况下退出<BR>　　: q! 放弃所有修改，退出编辑程序<BR>　　：wq 保存修改退出<BR>　　<BR>　　2. 行号与文件<BR>　　<BR>　　编辑中的每一行正文都有自己的行号，用下列命令可以移动光标到指定行：<BR>　　: n 将光标移到第 n 行命令模式下，可以规定命令操作的行号范围。数值用来指定绝对行号；字符“.”表示光标所在行的行号；字符符“$”表示正文最后一行的行号；简单的表达式，例如“.+5”表示当前行往下的第 5 行。例如：<BR>:345 将光标移到第 345 行<BR>:345w file 将第 345 行写入 file 文件<BR>:3,5w file 将第 3 行至第 5 行写入 file 文件<BR>:1,.w file 将第 1 行至当前行写入 file 文件<BR>:.,$w file 将当前行至最后一行写入 file 文件<BR>:.,.+5w file 从当前行开始将 6 行内容写入 file 文件<BR>:1,$w file 将所有内容写入 file 文件，相当于 :w file 命令<BR>　　在命令模式下，允许从文件中读取正文，或将正文写入文件。例如：<BR>:w 将编辑的内容写入原始文件，用来保存编辑的中间结果<BR>:wq 将编辑的内容写入原始文件并退出编辑程序（相当于 ZZ 命令）<BR>:w file 将编辑的内容写入 file 文件，保持原有文件的内容不变<BR>:a,bw file 将第 a 行至第 b 行的内容写入 file 文件<BR>:r file 读取 file 文件的内容，插入当前光标所在行的后面<BR>:e file 编辑新文件 file 代替原有内容<BR>:f file 将当前文件重命名为 file<BR>:f 打印当前文件名称和状态，如文件的行数、光标所在的行号等<BR>　　<BR>　　字符串搜索<BR>　　<BR>　　给出一个字符串，可以通过搜索该字符串到达指定行。如果希望进行正向搜索，将待搜索的字符串置于两个“/”之间；如果希望反向搜索，则将字符串放在两个“?”之间。例如：<BR>:/str/ 正向搜索，将光标移到下一个包含字符串 str 的行<BR>:?str? 反向搜索，将光标移到上一个包含字符串 str 的行<BR>:/str/w file 正向搜索，并将第一个包含字符串 str 的行写入 file 文件<BR>:/str1/,/str2/w file 正向搜索，并将包含字符串 str1 的行至包含字符串 str2 的行写入 file 文件]]></description>
</item><item>
<title><![CDATA[MetaQuerier: Exploring and Integrating the Deep Web]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26759</link>
<author>jdilt</author>
<pubDate>2007/7/26 13:20:58</pubDate>
<description><![CDATA[
<H1><B>MetaQuerier</B>: Exploring and Integrating the Deep Web</H1>
<HR width="100%">

<H3><B><FONT face=Arial,Helvetica color=#000000>||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#projects">Projects</A>&nbsp; ||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#funding">Funding</A>&nbsp; ||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#people">People</A>&nbsp; ||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#publications">Publications</A>&nbsp; || <A href="http://metaquerier.cs.uiuc.edu/#tutorials">Tutorials</A>&nbsp; ||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#demos">Demos</A>&nbsp; ||&nbsp; <A href="http://metaquerier.cs.uiuc.edu/#datasets">Datasets</A>&nbsp; ||</FONT></B></H3>
<HR width="100%">

<P><FONT face=Arial,Helvetica><FONT color=#000000>This research aims at enabling effective access to <I>structured information sources </I>on the Internet. Over the past few years, the Web has <I>deepened</I> dramatically- A significant and increasing amount of information is hidden on the "deep" Web, behind the query interfaces of <I>searchable </I>databases. There are numerous such autonomous and heterogeneous sources, each with a different schema and native query constraints. Because current crawlers cannot effectively query databases, such data is invisible to traditional search engines, and thus remains largely hidden from users.</FONT></FONT> </P>
<P><FONT face=Arial,Helvetica><FONT color=#000000>We propose to build a <I>metaquery</I> system, to help users in <I>finding</I> and <I>querying</I> online databases effectively and uniformly. Our efforts aim at opening up the deep Web to users, by building a MetaQuerier; see the architecture below. On this wild frontier of the deep Web, the MetaQuerier will address the challenges of both <I>exploration</I> and <I>integration</I>. Our goal is thus two fold: First, to make the deep Web systematically <I>accessible</I>: the <I>MetaExplorer </I>will discover sources on the deep Web to build a searchable repository, in order to help users find sources useful for their information need. Second, to make the deep Web uniformly <I>usable</I>: the <I>MetaIntegrator </I>will help users interact with online databases to ask queries.</FONT></FONT> </P>
<H3><A name=projects></A><FONT face=Arial,Helvetica><FONT color=#000000>Projects</FONT></FONT></H3>
<UL>
<LI><FONT face=Arial,Helvetica><FONT color=#000000>First, the <I>MetaExplorer</I> project focuses on the <I>discovery</I>, <I>modeling</I>, and <I>structuring </I>of databases on the Web, to build a searchable <I>source repository</I>. Essentially, this <I>MetaExplorer</I> project will develop a "search engine" of Web databases: It will develop crawlers for efficiently discovering databases on the Internet, design models for representing these databases, develop wrappers for automatically extracting their model parameters (e.g., schema details on their query interfaces), and structure and index a searchable repository of Web sources.</FONT></FONT></LI></UL>
<UL>
<LI><FONT face=Arial,Helvetica><FONT color=#000000>Second, the <I>MetaIntegrator</I> project focuses on the <I>integration </I>issues of online sources-- i.e., to bring sources coherently together for query answering. Specifically, we will investigate <I>source selection</I>, <I>query mediation</I>, and <I>schema integration</I>, for building the <I>MetaIntegrator. </I>In studying large-scale integration, these thrusts will benefit from the source repository of the companion <I>MetaExplorer</I>. We will investigate the key enabling technology of dynamic ad-hoc information integration. In contrast to a traditional static system, our <I>MetaIntegrator</I> is dynamic (as new sources may be added any time when they are discovered) and essentially requires ad-hoc integration, which must dynamically select and bring together different sources to answer a query.</FONT></FONT></LI></UL><FONT face=Arial,Helvetica><FONT color=#000000>Given the pressing need for effective access to the deep Web, we believe the synergy between the exploration and integration focuses of the two sub-projects will together bring a more complete and timely solution for realizing our MetaQuerier goal.</FONT></FONT> 
<CENTER>
<P><IMG height=331 src="http://metaquerier.cs.uiuc.edu/fig-explorerintegrator.jpg" width=638></P></CENTER>
<H3><A name=funding></A><B><FONT face=Arial,Helvetica><FONT color=#000000>Funding</FONT></FONT></B></H3><FONT face=Arial,Helvetica><FONT color=#000000>We gratefully acknowledge our funding sources:</FONT></FONT> 
<UL>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=0133199">NSF CAREER Award 2002, IIS-0133199</A>: for <I>MetaExplorer</I></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=0313260">NSF ITR Award 2003, IIS-0313260</A>: for <I>MetaIntegrator</I></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica>NSF REU/ITR Award 2004, IIS-0434721</FONT></LI>
<LI><FONT face=Arial,Helvetica>Intel WIE Intel Scholars Grant 2004</FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000>NCSA </FONT></FONT>(National Center for Supercomputing Applications) <FONT face=Arial,Helvetica><FONT color=#000000>Faculty Fellows Award 2003</FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000>UIUC Faculty Startup Funds</FONT></FONT></LI></UL>
<H3><A name=people></A><FONT face=Arial,Helvetica><FONT color=#000000><FONT size=+1>People</FONT></FONT></FONT></H3>
<UL>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://www-faculty.cs.uiuc.edu/~kcchang">Kevin Chen-Chuan Chang</A></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://www.ews.uiuc.edu/~binhe/">Bin He</A></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://www.ews.uiuc.edu/~cli/">Chengkai Li</A></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="https://eagle.cs.uiuc.edu/~zhang2/">Zhen Zhang</A></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="http://eagle.cs.uiuc.edu/~gkabra2/">Govind Kabra</A></FONT></FONT></LI>
<LI><FONT face=Arial,Helvetica><FONT color=#000000><A href="https://netfiles.uiuc.edu/schuang2/www/">Shui-Lung Chuang</A></FONT></FONT></LI></UL>
<H3><A name=publications></A><FONT face=Arial,Helvetica><FONT color=#000000>Publications</FONT></FONT></H3>
<UL>
<LI><FONT color=#cc33cc>Context-Aware Wrapping: Synchronized Data Extraction.</FONT> S.-L. Chuang, K. C.-C. Chang, and C. Zhai. <I>To appear in Proceedings of the 33rd International Conference on Very Large Data Bases (VLDB)</I>, Vienna, Austria, September 23-28 2007. [<A href="http://www-forward.cs.uiuc.edu/pubs/2007/syncde-vldb07-ccz-jul07.pdf">PDF</A>]</LI>
<LI><FONT color=#cc33cc>Accessing the Deep Web: A Survey.</FONT> B. He, M. Patel, Z. Zhang, and K. C.-C. Chang. <I>Communications of the ACM (CACM)</I>, 50(5):94-101, May 2007. [<A href="http://www-forward.cs.uiuc.edu/pubs/2007/accessingdeepweb-cacm-hpzc-may07.pdf">PDF</A>]</LI>
<LI></LI>
<LI><FONT color=#cc33cc>Collaborative Wrapping: A Turbo Framework for Web Data Extraction.</FONT> S.-L. Chuang, K. C.-C. Chang, and C. Zhai. <I>In Proceedings of the IEEE 23rd International Conference on Data Engineering (ICDE)</I>, Istanbul, Turkey, April 2007. [<A href="http://www-forward.cs.uiuc.edu/pubs/2006/colwrap-icde07-ccz-nov06.pdf">PDF</A>] (poster)</LI>
<LI><FONT color=#cc33cc>Automatic Complex Schema Matching across Web Query Interfaces: A Correlation Mining Approach.</FONT> B. He and K. C.-C. Chang. <I>ACM Transactions on Database Systems (TODS)</I>, 31(1), March 2006. [<A href="http://www-forward.cs.uiuc.edu/pubs/2006/complexmatching-tods-hc-mar06.pdf">PDF</A>]</LI><FONT color=#cc33cc>Light-weight Domain-based Form Assistant: Querying Web Databases On the Fly.</FONT> Z. Zhang, B. He, and K. C.-C. Chang. In <I>Proceedings of the 31st Very Large Data Bases Conference (VLDB 2005)</I>, Trondheim, Norway, August 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2005/translation-vldb05-zhc-jun05.pdf">PDF</A>] 
<LI><FONT color=#cc33cc>Making Holistic Schema Matching Robust: An Ensemble Approach.</FONT> B. He and K. C.-C. Chang. In <I>Proceedings of the 2005 ACM SIGKDD Conference (KDD 2005) (Full Paper)</I>, Chicago, Illinois, August 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2005/robustmatching-sigkdd05-hc-jun05.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Query Routing: Finding Ways in the Maze of the Deep Web.</FONT> G. Kabra, C. Li, and K. C.-C. Chang. In <I>Proceedings of the ICDE International Workshop on Challenges in Web Information Retrieval and Integration (ICDE-WIRI 2005)</I>, Tokyo, Japan, April 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2005/queryrouting-wiri05-klc-feb05.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Toward Large Scale Integration: Building a MetaQuerier over Databases on the Web.</FONT> K. C.-C. Chang, B. He, and Z. Zhang. In <I>Proceedings of the Second Conference on Innovative Data Systems Research (CIDR 2005)</I>, Asilomar, California, January 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/metaquerier-cidr05-chz-nov04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Mining Semantics for Large Scale Integration on the Web: Evidences, Insights and Challenges.</FONT> K. C.-C. Chang, B. He, and Z. Zhang. <I>SIGKDD Explorations</I>, 6(2):67-76, December 2004. Invited paper. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/miningsd-kddexp-chz-nov04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>A Holistic Paradigm for Large Scale Schema Matching.</FONT> B. He and K. C.-C. Chang. <I>SIGMOD Record</I>, 33(4):20-25, December 2004. Invited paper. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/holisticmatching-sigmodrecord-hc-oct04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Organizing Structured Web Sources by Query Schemas: A Clustering Approach.</FONT> B. He, T. Tao, and K. C.-C. Chang. In <I>Proceedings of the 13th Conference on Information and Knowledge Management (CIKM 2004) (Full Paper)</I>, Washington D.C., November 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/schemaclustering-cikm04-htc-sep04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Structured Databases on the Web: Observations and Implications.</FONT> K. C.-C. Chang, B. He, C. Li, M. Patel, and Z. Zhang. <I>SIGMOD Record</I>, 33(3):61-70, September 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/dwsurvey-sigmodrecord-chlpz-aug04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>MetaQuerier over the Deep Web: Shallow Integration across Holistic Sources.</FONT> K. C.-C. Chang, B. He, and Z. Zhang. In <I>Proceedings of the VLDB Workshop on Information Integration on the Web (VLDB-IIWeb'04)</I>, Toronto, Canada, August 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/shallowintegration-iiweb04-chz-jul04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>On-the-fly Constraint Mapping across Web Query Interfaces.</FONT> Z. Zhang, B. He, and K. C.-C. Chang. In <I>Proceedings of the VLDB Workshop on Information Integration on the Web (VLDB-IIWeb'04)</I>, Toronto, Canada, August 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/translation-iiweb04-zhc-jul04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Discovering Complex Matchings across Web Query Interfaces: A Correlation Mining Approach.</FONT> B. He, K. C.-C. Chang, and J. Han. In <I>Proceedings of the 2004 ACM SIGKDD Conference (KDD 2004) (Full Paper)</I>, Seattle, Washington, August 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/complexmatching-sigkdd04-hch-jun04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Mining Complex Matchings across Web Query Interfaces.</FONT> B. He, K. C.-C. Chang, and J. Han. In <I>Proceedings of the 9th ACM SIGMOD Workshop on Research Issues on Data Mining and Knowledge Discovery (SIGMOD-DMKD'04) (Full Paper)</I>, Paris, France, June 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/complexmatching-dmkd04-hch-may04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Understanding Web Query Interfaces: Best-Effort Parsing with Hidden Syntax.</FONT> Z. Zhang, B. He, and K. C.-C. Chang. In <I>Proceedings of the 2004 ACM SIGMOD Conference (SIGMOD 2004)</I>, Paris, France, June 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/parsing-sigmod04-zhc-mar04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Clustering Structured Web Sources: A Schema-based, Model-Differentiation Approach.</FONT> B. He, T. Tao, and K. C.-C. Chang. In <I>Proceedings of the EBDT Workshop on Clustering Information over the Web (EDBT-ClustWeb'04)</I>, Crete, Greece, March 2004. An expanded version of this paper, invited to be a part of the <I>Current Trends in Database Technology</I> volume, is published in the Springer-Verlag Lecture Notes in Computer Science Series Vol. 3268. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/schemaclustering-clustweb04-htc-feb04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Statistical Schema Matching across Web Query Interfaces.</FONT> B. He and K. C.-C. Chang. In <I>Proceedings of the 2003 ACM SIGMOD Conference (SIGMOD 2003)</I>, San Diego, California, June 2003. [<A href="http://eagle.cs.uiuc.edu/pubs/2003/unifiedschema-sigmod03-hc-mar03.pdf">PDF</A>]</LI>
<LI><FONT color=#cc33cc>Approximate Query Translation Across Heterogeneous Information Sources.</FONT> K. C.-C. Chang and H. Garcia-Molina. In <I>Proceedings of the 26th VLDB Conference (VLDB 2000)</I>, pages 566-577, Cairo, Egypt, September 2000. [<A href="http://www-sal.cs.uiuc.edu/~kcchang/Papers/atran-vldbj.ps">Extended Version</A>]</LI></UL>
<H3><A name=tr></A><FONT face=Arial,Helvetica>Technical Reports</FONT></H3>
<UL>
<LI><FONT color=#cc33cc>A Structure-Driven Yield-Aware Web Form Crawler: Building a Database of Online Databases.</FONT> B. He, C. Li, D. Killian, M. Patel, Y. Tseng, and K. C.-C. Chang. <I>UIUCDCS-R-2006-2752, Department of Computer Science, UIUC</I>, July 2006. [<A href="http://eagle.cs.uiuc.edu/tr/UIUCDCS-R-2006-2752.pdf">PDF</A>]</LI></UL>
<H3><FONT face=Arial,Helvetica><A name=tutorials></A>Tutorials</FONT></H3>
<UL>
<LI><FONT color=#cc33cc>Accessing the Web: From Search to Integration</FONT>. K.&nbsp;C.-C. Chang and J.&nbsp;Cho. In <CITE>Proceedings of the 2006 ACM SIGMOD Conference (SIGMOD 2006)</CITE>, Chicago, June 2006. Tutorial description. [<A href="http://eagle.cs.uiuc.edu/pubs/2006/webaccesstutorial-sigmod06-cc-mar06.pdf">PDF</A>] [Part II: <A href="http://www-faculty.cs.uiuc.edu/~kcchang/talks/webitutorial-sigmod06-kcchang-jun06.ppt">Web Integration</A>; <A href="http://metaquerier.cs.uiuc.edu/webibib.html">Bibliography</A>]</LI></UL>
<H3><A name=demos></A><FONT face=Arial,Helvetica>Demos</FONT></H3>
<UL>
<LI><FONT color=#cc33cc><A href="http://metaquerier.cs.uiuc.edu/repository/tasks/formExtract.html">Online Demo: Query capability extraction for understanding Web query interfaces</A></FONT> </LI>
<LI><FONT color=#cc33cc>MetaQuerier: Querying Structured Web Sources On-the-fly.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>Proceedings of the 2005 ACM SIGMOD Conference (SIGMOD 2005), System Demonstration</I>, Baltimore, Maryland, June 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2005/querytranslationdemo-sigmod05-hzc-mar05.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>MetaQuerier: Querying Structured Web Sources On-the-fly.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>Second Midwest Database Research Symposium</I>, Chicago, Illinois, April 2005. </LI>
<LI><FONT color=#cc33cc>Towards Building a MetaQuerier: Extracting and Matching Web Query Interfaces.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>Proceedings of the 21st International Conference on Data Engineering (ICDE 2005), System Demonstration</I>, Tokyo, Japan, April 2005. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/metaquerydemo-icde05-hzc-oct04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Towards Building a MetaQuerier: Extracting and Matching Web Query Interfaces.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>NSF Information and Data Management (IDM) Workshop 2004</I>, Boston, Massachussett, October 2004. </LI>
<LI><FONT color=#cc33cc>Knocking the Door to the Deep Web: Integrating Web Query Interfaces.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>Proceedings of the 2004 ACM SIGMOD Conference (SIGMOD 2004), System Demonstration</I>, Paris, France, June 2004. [<A href="http://eagle.cs.uiuc.edu/pubs/2004/metaquerydemo-sigmod04-hzc-mar04.pdf">PDF</A>] </LI>
<LI><FONT color=#cc33cc>Toward a MetaQuerier for the Deep Web: Integrating Web Query Interfaces.</FONT> B. He, Z. Zhang, and K. C.-C. Chang. In <I>First Midwest Database Research Symposium</I>, Chicago, Illinois, April 2004. </LI>
<LI><FONT color=#cc33cc>Knocking the Doors to the Deep Web: Understanding Web Query Interfaces.</FONT> Z. Zhang, B. He, and K. C.-C. Chang. In <I>NSF Information and Data Management (IDM) Workshop 2003</I>, Seattle, Washington, September 2003. </LI></UL>
<H3><A name=datasets></A><FONT face=Arial,Helvetica><FONT color=#000000>Datasets</FONT></FONT></H3>
<UL>
<LI><A href="http://metaquerier.cs.uiuc.edu/repository">The UIUC Web Integration Repository</A></LI></UL>]]></description>
</item><item>
<title><![CDATA[【转】查找"看不见的网页"的途径与工具]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26758</link>
<author>jdilt</author>
<pubDate>2007/7/26 12:38:11</pubDate>
<description><![CDATA[
<DIV class=cnt>
<P align=center><STRONG>查找"看不见的网页"的途径与工具</STRONG></P>
<P align=center>邢志宇</P>
<P align=center>&nbsp;&nbsp;"看不见的网页"（The&nbsp;Invisible&nbsp;Web）是指搜索引擎商出于自身考虑不愿索引的某些网络内容，或是因为技术原因普通搜索引擎（popular&nbsp;search&nbsp;engines）无法索引的网络内容。这些普通搜索引擎的"蜘蛛"不容易接近的"深层网络"（deep&nbsp;Web）的数量，要比搜索引擎索引的网页（visible&nbsp;Web）多出500多倍。如何搜索Invisible&nbsp;Web&nbsp;已经引起国内外学者和网络搜索爱好者的关注。就搜索技术而言，搜索网站和搜索引擎商正在寻求构建能够揭示Invisible&nbsp;Web的目录指南，或改进搜索技术，增加搜索功能等多种对策；就具体搜索而言，用户应注意调整搜索策略，熟悉相关目录和专用搜索引擎，掌握相应的搜索技巧。一般来说，搜索Invisible&nbsp;Web可以从目录指南（directories）、具有检索功能的网站（searchable&nbsp;sites）、免费数据库（free&nbsp;Web&nbsp;databases），以及专用搜索引擎（specialized&nbsp;search&nbsp;engines）和优秀普通搜索引擎等四种途径入手，选择使用相应的检索工具。&nbsp; </P>
<P><BR><STRONG>一、目录指南</STRONG></P>
<P>1、Librarians'&nbsp;Index&nbsp;to&nbsp;the&nbsp;Internet(&nbsp;<A href="http://lii.org/"><FONT color=#810081>http://lii.org/</FONT></A>)，一个可以信赖的经过图书馆员筛选和维护的包括14,000多个网站的主题目录，在查询框输入一个宽泛的主题词加上"and&nbsp;databases"就可以进入相关的<BR>"Invisible&nbsp;Web"资源，如输入检索词"biology&nbsp;and&nbsp;databases"（生物和数据库），就可找到普通搜索引擎无法索引的有关生物方面的数据库资源。</P>
<P>2、FindLaw&nbsp;(&nbsp;<A href="http://www.findlaw.com/">http://www.findlaw.com/</A>)，世界著名的法律网站，在法律条目下链接许多免费数据库，是查找法律Invisible&nbsp;Web的常用工具。</P>
<P>3、InfoMine&nbsp;(&nbsp;<A href="http://infomine.ucr.edu/">http://infomine.ucr.edu</A>)，图书馆员编制的包括120,000&nbsp;多个学术网站的分类目录。</P>
<P>4、About.com&nbsp;(&nbsp;<A href="http://www.about.com/"><FONT color=#810081>http://www.about.com/</FONT></A>)&nbsp;，内容广泛，查询主题数以万计，包括众多"Invisible&nbsp;Web"资源，并有精选新闻和评论，输入"Invisible&nbsp;Web"可以找到很多隐藏网页链接，如："Invisible&nbsp;Web:&nbsp;The&nbsp;Cloaked&nbsp;Internet"（"看不见的网页"：被掩盖的网络资源）、 "&nbsp;Visible&nbsp;versus&nbsp;Invisible&nbsp;Web"（从可见网页到"看不见的网页"）等等，&nbsp;可作为搜索"Invisible&nbsp;Web"的指南。</P>
<P>5、Academicinfo（&nbsp;<A href="http://www.academicinfo.net/">http://www.academicinfo.net/</A>），学术资源主题指南，提供一个适合大学生利用的学术网络资源检索入口。它以"Subject&nbsp;Gateway"区分知识领域，利用知识树的方式细分主题，主题下汇集该门学科的包括数据库等的各种相关网络资源，而不仅仅是网站的链接。该目录以图书馆和学术单位的电子资源为主，主题的分类和内容指引清晰易寻，使用方便。&nbsp;</P>
<P><BR><STRONG>二、搜索"Invisible&nbsp;Web"的网站</STRONG></P>
<P>1、Direct&nbsp;Search&nbsp;(&nbsp;<A href="http://www.freepint.com/gary/direct.htm">http://www.freepint.com/gary/direct.htm</A>)，最具权威的用于检索"看不见的网页"的网站，拥有数量庞大的Invisible&nbsp;Web资源链接。</P>
<P>2、The&nbsp;Invisible&nbsp;Web&nbsp;Directory&nbsp;(&nbsp;<A href="http://www.invisible-web.net/">http://www.invisible-web.net/</A>)，《看不见的网页》（The&nbsp;Invisible&nbsp;Web: &nbsp;Uncovering&nbsp;Information&nbsp;Sources&nbsp;Search&nbsp;Engines&nbsp;Can't&nbsp;See&nbsp;）作者 Chris&nbsp;Sherman和&nbsp;Gary&nbsp;Price创办的专门用于指导检索Invisible&nbsp;Web资源的网站，网站的宗旨是"寻找搜索引擎无法找到的隐藏的网络资源"（Finding&nbsp;Hidden&nbsp;Internet&nbsp;Resources&nbsp;Search&nbsp;Engines&nbsp;Can't&nbsp;See）。</P>
<P>3、Profusion&nbsp;(&nbsp;<A href="http://www.profusion.com/">http://www.profusion.com</A>)， Intelliseek公司旗下的一个智能型并行元搜索引擎，其搜索对象分为包括WEB（万维网）、News（新闻）、Jobs（职业信息）、MP3、 Downloads（下载文件）、Legal（法津）、Discussions（讨论组）等21个资源大类。可搜索以网页搜索为主的其它搜索引擎无法搜索到的数据库、百科全书等资源类型的信息。</P>
<P>4、CompletePlanet&nbsp;(&nbsp;<A href="http://www.completeplanet.com/">http://www.completeplanet.com/</A>)，BrightPlanet公司经营的网站，包括70,000多个可以检索的数据库及专用搜索引擎，用于从数据库查找不能够被普通搜索引擎索引的文件。</P>
<P><STRONG>三、Invisible&nbsp;Web&nbsp;数据库</STRONG></P>
<P>1、AnimalSearch&nbsp;(&nbsp;<A href="http://animalsearch.net/">http://animalsearch.net/</A>)，一个适合家庭使用的有关动物的网站数据库。</P>
<P>2、Educator's&nbsp;Reference&nbsp;Desk&nbsp;(&nbsp;<A href="http://www.eduref.org/">http://www.eduref.org/</A>)，在过去的十年中，该网站始终链接着AskERIC网站上的2000多个教学计划,&nbsp;3000多种在线教育信息链接和200多件咨询档案。该网站提供 "ERIC教育研究数据库"--世界最大的教育资源数据库和美国教育部的GEM（Gateway&nbsp;to&nbsp;Educational&nbsp;Materials）的检索入口。</P>
<P>3、NatureServe&nbsp;Explorer(&nbsp;<A href="http://www.natureserve.org/explorer">http://www.natureserve.org/explorer</A>)，网上百科全书，提供美国和加拿大<BR>60,000多种植物、动物、生态系统的权威资料。</P>
<P>4、Nuclear&nbsp;Explosions&nbsp;Database&nbsp;(&nbsp;<A href="http://www.ga.gov.au/oracle/nukexp_query.html">http://www.ga.gov.au/oracle/nukexp_query.html</A>)，澳大利亚地球科学数据库，提供1945年以来世界范围内核爆炸的地点、时间、规模等数据，点击"databases"下的"Online&nbsp;Tools"可以看到在线制图工具和数据库列表。</P>
<P>5、PubMed&nbsp;(&nbsp;<A href="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi">http://www.ncbi.nlm.nih.gov/entrez/query.fcgi</A>), 提供对MEDLINE（美国国家医学图书馆的文献数据库）1400多万全文和相关资源的检索，还可以浏览美国国家医学图书馆（NLM）所属的国家生物技术信息中心（NCBI）的数字化生命科学期刊文献馆（PubMed&nbsp;Central&nbsp;(PMC)）中160多种专业期刊全文和《书架》<BR>（Bookshelf）数据库中不断增长的生物医学工程图书的全文,它还提供目前世界上最大的生物分子数据库NCBI的Entrez数据库检索系统，以此为入口可以检索更多的生命科学方面的数据库。</P>
<P>6、LookSmart's&nbsp;FindArticles&nbsp;(&nbsp;<A href="http://www.findarticles.com/">http://www.findarticles.com/</A>)，LookSmart管理的一个免费全文数据库，可提供900多种出版物的5500万篇文章的全文免费检索和打印。从LookSmart主页（<A href="http://search.looksmart.com/">http://search.looksmart.com/</A>）上列的"Articles"按钮，也可进入该数据库。</P>
<P>7、Directory&nbsp;of&nbsp;Open&nbsp;Access&nbsp;Journals&nbsp;(&nbsp;<A href="http://www.doaj.org/">http://www.doaj.org/</A>)，2003年5月由瑞典隆德大学图书馆推出的开放式目录检索系统，免费提供1300多种期刊的篇目检索和300多种自然科学、人文科学及社会科学期刊的全文检索。</P>
<P><STRONG>四、搜索引擎</STRONG></P>
<P>1、Incywincy（&nbsp;<A href="http://www.incywincy.com/">http://www.incywincy.com/</A>），以Net&nbsp;Research&nbsp;Server&nbsp;(NRS)技术为核心的Invisible&nbsp;Web搜索引擎，其目录是由DMOZ（<A href="http://dmoz.org/">http://dmoz.org/</A>）提供的&nbsp;Open&nbsp;Directory&nbsp;Project，其"蜘蛛"程序并不是探寻所有的网站，而仅仅是抓取ODP中的Invisible&nbsp;Web网页。</P>
<P>2、google&nbsp;scholar(&nbsp;<A href="http://scholar.google.com%29,google/">http://scholar.google.com),Google</A>学术搜索实际上是Google索引的一个子集，涉及医药、物理、经济以及计算机科学等多个领域，可以搜到一些与输入关键词相关的学术性刊物文章，研究机构论文、书籍、摘要及技术报告等等,搜索结果中可以列出文章的不同版本以及被其他文章所引用的次数。它可以对pubmed（美国国立生物技术信息中心 (NCBI)开发的用于检索MEDLINE、PreMED-LINE数据库的网上检索系统）等独立的专业数据库进行检索。</P>
<P>3、Singingfish&nbsp;(&nbsp;<A href="http://www.singingfish.com/"><FONT color=#810081>http://www.singingfish.com</FONT></A>)，一个优秀的声/视频搜索引擎，它只索Windows&nbsp;Media、<BR>Real、&nbsp;QuickTime、mp3等多媒体文档，其搜索结果可以免费使用。</P>
<P>4、Google&nbsp;News&nbsp;(&nbsp;<A href="http://news.google.com/">http://news.google.com/</A>)&nbsp;颇受好评的Google新闻搜索，拥有4500多个新闻源，每15分钟自动更新，其"Top&nbsp;Stories"下拉菜单，可供浏览不同国家的"最新新闻"。注：Yahoo!News、Topix.net、<BR>Daypop等也有类似功能。&nbsp;</P>
<P>5、Scirus&nbsp;(&nbsp;<A href="http://www.scirus.com/">http://www.scirus.com/</A>)&nbsp;，一个覆盖16700多万网页的著名的科学搜索引擎，它的高级搜索功能尤其令人称道，可以从科学学科（如： Agricultural&nbsp;and&nbsp;Biological&nbsp;Sciences、Astronomy...）、信息源（如：NASA、 US&nbsp;Patent&nbsp;Office...）、文件格式（如：PDF、HTML...）、信息类型（如：Abstracts、Articles、 Books...）等途径检索1920年至今的期刊和网络科学文献，查找具体数据、报告、文章和相关研究网页极为方便。</P>
<P>在搜索多种非HTML文档（non-HTML&nbsp;files）方面功能强大或独具特色的普通搜索引擎，如Google&nbsp;(<A href="http://www.google.com/">http://www.google.com/</A>)&nbsp;、Yahoo!&nbsp;&nbsp;(<A href="http://www.yahoo.com/">http://www.yahoo.com/</A>)、Gigablast&nbsp;(<A href="http://www.gigablast.com/">http://www.gigablast.com/</A>)等，也是搜索Invisible&nbsp;Web不可忽视的工具</P></DIV>]]></description>
</item><item>
<title><![CDATA[3]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26727</link>
<author>jdilt</author>
<pubDate>2007/7/25 16:03:54</pubDate>
<description><![CDATA[
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第三章</SPAN><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"><FONT face="Times New Roman">&nbsp; </FONT></SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据预处理</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据预处理技术：</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo3; tab-stops: list 18.0pt"><SPAN lang=EN-US><FONT face="Times New Roman">1、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据清理</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">去除噪声</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">纠正不一致数据</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo3; tab-stops: list 18.0pt"><SPAN lang=EN-US><FONT face="Times New Roman">2、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据整合</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">把多个数据源的数据合成一致的数据存储</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo3; tab-stops: list 18.0pt"><SPAN lang=EN-US><FONT face="Times New Roman">3、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据转换</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">规范化（按比例映射到一个特定的区间</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">[0.0,1.0]</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）可以改进涉及距离度量的挖掘算法的精度和效率</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo3; tab-stops: list 18.0pt"><SPAN lang=EN-US><FONT face="Times New Roman">4、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据归约</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通过聚集（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">aggregation</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）、消除冗余特性、聚类（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">clustering</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）减小数据规模</SPAN><SPAN lang=EN-US><FONT face="Times New Roman"> </FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo3; tab-stops: list 18.0pt"><SPAN lang=EN-US><FONT face="Times New Roman">5、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">离散化</SPAN><SPAN lang=EN-US><FONT face="Times New Roman"> &amp; </FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">概念分层</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><v:shapetype id=_x0000_t75 stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype><v:shape id=_x0000_i1025 style="WIDTH: 414.75pt; HEIGHT: 279.75pt" type="#_x0000_t75"><v:imagedata o:title="" src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msoclip1/01/clip_image001.wmz"></v:imagedata></v:shape></SPAN></P>]]></description>
</item><item>
<title><![CDATA[Data Mining 学习笔记【一】]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26607</link>
<author>jdilt</author>
<pubDate>2007/7/22 13:09:50</pubDate>
<description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=5><STRONG><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第一章</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">引言</SPAN></STRONG></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=5><STRONG><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></SPAN></STRONG></FONT>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>数据仓库：多个一种数据源在单个站点以统一的模式组织存储，以支持决策分析。</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></SPAN>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据仓库技术包括</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据清理</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据集成</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">联机分析处理（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">OLAP</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">OLAP</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是一种分析技术，具有汇总、合并和聚集功能。</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></SPAN></FONT>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据挖掘（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">DM</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">or </FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">知识发现（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">KDD</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）过程：</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">1）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据清理</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（消除噪声或不一致数据）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">2）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据集成</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（组合多种数据源）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">3）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据选择</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（从数据库中检索与分析任务相关的数据）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">4）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据变换</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（数据变换或统一成适合挖掘的形式）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">5）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据挖掘</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（使用智能方法提取数据模式）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">6）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模式评估</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（根据某种兴趣度度量，识别表示知识的真正有趣的模式）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman">7）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">知识表示</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（使用可视化和知识表示技术，向用户提供挖掘到的知识）</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><FONT face="Times New Roman"><FONT size=4>&nbsp;<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></FONT></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据挖掘的功能</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">——</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可以挖掘什么类型的模式</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据挖掘任务分两类：描述</SPAN><SPAN lang=EN-US><FONT face="Times New Roman"> and </FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">预测</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><FONT face="Times New Roman" size=4>Descriptive mining tasks characterize the general properties of the data in the database. Predictive mining tasks perform inference on the current data in order to make predictions.</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>描述性的数据挖掘任务用于特征化数据库数据的一般属性。</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>预测性数据挖掘任务通过对当前数据进行推断来进行预测。</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><FONT face="Times New Roman"><FONT size=4>&nbsp;<o:p></o:p></FONT></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><FONT face="Times New Roman" size=4>Data mining functionalities, and the kinds of patterns they can discover, are described below.</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>1、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN><SPAN lang=EN-US>Concept/class description: characterization and discrimination</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><FONT face="Times New Roman"><FONT size=4><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>These descriptions can be derived via</FONT></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo2; tab-stops: list 47.25pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>1）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN lang=EN-US>data characterization, by summarizing the data of the class under study (often called the target class) in general terms</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo2; tab-stops: list 47.25pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>2）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN lang=EN-US>data discrimination, by comparison of the target class with one or a set of comparative classes (often called the contrasting classes)</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo2; tab-stops: list 47.25pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>3）<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN lang=EN-US>both data characterization and discrimination</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>2、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN><SPAN lang=EN-US>Association analysis</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><FONT size=4><SPAN lang=EN-US><FONT face="Times New Roman"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Support </FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持度</SPAN><SPAN lang=EN-US><FONT face="Times New Roman"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>confidence </FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">置信度</SPAN><FONT face="Times New Roman"> </FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN lang=EN-US><FONT face="Times New Roman" size=4>multidimensional association rule</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN lang=EN-US><FONT face="Times New Roman" size=4>single-dimensional association rules</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>3、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN><SPAN lang=EN-US>Classication and prediction</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>分类：通过对类标签已知数据（即：训练数据）的分析，得到一组模型或公式。然后可以利用得到的模型来预测类标签未知对象的分类。</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模型的表示形式：（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">IF-THEN</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）分类规则、判定树、数学公式、神经网络</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>分类用于预测数据对象的类标记</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt"><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><FONT size=4>预测用于预测空缺或不可用的数值</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">相关分析</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可能在分类和预测之前进行，用于识别对分类和预测无用的属性。预先排除。</SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt"><FONT face="Times New Roman"><FONT size=4><SPAN lang=EN-US>4、<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN><SPAN lang=EN-US>Clustering analysis</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 32.25pt"><FONT size=4><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">由于一般情况下，训练数据并不是被标记好的，所以，需要用聚类分析来给训练数据分组。分组原则：最大化类内相似性、最小化类间相似性</SPAN><FONT face="Times New Roman"> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">（</SPAN><SPAN lang=EN-US><FONT face="Times New Roman">maximizing the intraclass similarity and minimizing the interclass similarity</FONT></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</SPAN></FONT></P><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><FONT size=4>每个形成的簇看作一个对象类，由它导出规则。</FONT></SPAN>]]></description>
</item><item>
<title><![CDATA[A Roadmap to Text Mining and Web Mining]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=jdilt&amp;id=26595</link>
<author>jdilt</author>
<pubDate>2007/7/21 15:09:26</pubDate>
<description><![CDATA[
<CENTER>
<H1>A Roadmap to Text Mining and Web Mining</H1>
<H4>- Under Construction, Last Modified: Jan 8, 2002 -</H4></CENTER>
<P>
<HR>

<P>
<UL>
<LI>
<H2>Text Mining in General</H2>
<UL>
<LI><A href="http://www.sims.berkeley.edu/~hearst/">M. Hearst</A>, <A href="http://www.sims.berkeley.edu/~hearst/papers/acl99/acl99-tdm.html">Untangling Text Data Mining</A>, ACL99 
<LI><A href="http://mappa.mundi.net/trip-m/hearst/">Mining in Textual Mountains: An Interview with Marti Hearst</A>, <A href="http://mappa.mundi.net/">Mappa Mundi</A>, 1999 
<LI>Semio Co., <A href="http://www.dmreview.com/portal_ros.cfm?NavID=92&amp;WhitePaperID=80&amp;PortalID=17">Text Mining and the Knowledge Management Space</A>, 1999 
<LI><A href="http://perun.si.umich.edu/~radev/">D. Radev</A>, <A href="http://www.cs.columbia.edu/~radev/cs6998/class/cs6998-09-02/">Text Data Mining: An Overview</A> 
<P></P>
<LI><B>Workshops</B> 
<UL>
<LI><A href="http://www-users.cs.umn.edu/~han/pakdd2002-text-mining.html">PAKDD-2002 Workshop on Text Mining</A> 
<LI><A href="http://www.cs.utk.edu/tmw02/">SDM-2002 Text Mining Workshop</A> (Text Mining 2002) 
<LI><A href="http://www-ai.ijs.si/DunjaMladenic/TextDM01/">ICDM-2001 Workshop on Text Mining</A> (TextDM'2001) 
<LI><A href="http://www.cs.utk.edu/tmw01/">SDM-2001 Text Mining Workshop</A> (TextMine'01) 
<LI><A href="http://www-2.cs.cmu.edu/~dunja/WshKDD2000.html">KDD-2000 Workshop on Text Mining</A> 
<LI><A href="http://www.ima.umn.edu/reactive/spring/tm.html">UMN-IMA Text Mining Workshop (2000)</A> 
<LI><A href="http://www.cs.biu.ac.il/~feldman/ijcai_99.html">IJCAI-99 Workshop on Text Mining</A> 
<LI><A href="http://www.tu-chemnitz.de/informatik/ecml98/text_mining.txt">ECML-98 Workshop on Text Mining</A> </LI></UL>
<P></P>
<LI><B>Tutorials</B> 
<UL>
<LI><A href="http://www-ai.ijs.si/DunjaMladenic/home.html">D. Mladenic</A> &amp; <A href="http://www-ai.ijs.si/MarkoGrobelnik/MarkoGrobelnik.html">M. Grobelink</A>, <A href="http://www.afia.polytechnique.fr/CAFE/ECML01/text_mining.html">ECML/PKDD-2001 Tutorial on Text Mining</A> </LI></UL>
<P></P>
<LI><B>Classes</B> 
<UL>
<LI><A href="http://www.sims.berkeley.edu/~hearst/">M. Hearst</A>, <A href="http://www.sims.berkeley.edu/courses/is296a-4/f99/lectures.html">Seminar on Text Data Mining</A> (SIMS, UCBerkeley) 
<LI><A href="http://www.research.whizbang.com/~wcohen/">W. Cohen</A>, <A href="http://www.research.whizbang.com/~wcohen/course.html">Machine Learning for Text Mining</A> (LTI, CS, CMU) 
<LI><A href="http://www1.ics.uci.edu/~pratt/">W. Pratt</A>, <A href="http://www1.ics.uci.edu/~pratt/courses/text-mining.html">Text Mining</A> (ICS, UCI) </LI></UL>
<P></P>
<LI><B>Links</B> 
<UL>
<LI><A href="http://directory.google.com/Top/Reference/Knowledge_Management/Knowledge_Discovery/Text_Mining/">Google Directory: Text Mining</A> 
<LI><A href="http://dmoz.org/Reference/Knowledge_Management/Knowledge_Discovery/Text_Mining/">Open Directory: Text Mining</A> </LI></UL></LI></UL></LI></UL>
<UL>
<LI>
<H2>Web Mining in General</H2>
<UL>
<LI><A href="http://www.cs.kuleuven.ac.be/~raymond/">R. Kosala</A> et. al, <A href="http://www.acm.org/sigs/sigkdd/explorations/issue2-1/kosala.ps">Web Mining Research: A Survey</A>, SIGKDD Explorations, 2000 
<LI><A href="http://www-users.cs.umn.edu/~cooley/">R. Cooley</A> et. al, <A href="http://www-users.cs.umn.edu/~mobasher/webminer/survey/survey.html">Web Mining: Information and Pattern Discovery on the World Wide Web</A> 
<LI>D. Greening, <A href="http://www.webtechniques.com/archives/2000/01/greening/">Data Mining on the Web</A>, <A href="http://www.webtechniques.com/">WebTechniques</A>, 2000 
<P></P>
<LI><B>People</B> 
<UL>
<LI><A href="http://www-db.stanford.edu/~sergey/">Sergey Brin</A> 
<LI><A href="http://www.cs.washington.edu/homes/etzioni/">Oren Etzioni</A> 
<LI><A href="http://www.cs.byu.edu/info/dwembley.html">David W. Embley</A> 
<LI><A href="http://dollar.biz.uiowa.edu/~fil/">Filippo Menczer</A> 
<LI><A href="http://maya.cs.depaul.edu/~mobasher/">Bamshad Mobasher</A> </LI></UL>
<P></P>
<LI><B>Workshops</B> 
<UL>
<LI><A href="http://semwebmine2001.aifb.uni-karlsruhe.de/">ECML/PKDD-2001 Semantic Web Mining Workshop</A> 
<LI><A href="http://www.lans.ece.utexas.edu/workshop_index.htm">SDM-2001 Workshop on Web Mining</A> 
<LI><A href="http://textmining.krdl.org.sg/cfp.html">PRICAI-2000 Workshop on Text and Web Mining</A> 
<LI><A href="http://wwwis.win.tue.nl/infwet97/proceedings/">INFWET97</A> </LI></UL></LI></UL></LI></UL>
<UL>
<LI>
<H2>Task-Driven Text Mining</H2>
<UL>
<LI><B>Text Categorization</B> 
<UL>
<LI><A href="http://www-2.cs.cmu.edu/~yiming/">Y. Yang</A>, <A href="http://www.cs.cmu.edu/~yiming/papers.yy/irj99.ps.gz">An Evaluation of Statistical Approaches to Text Categorization</A>, Journal of IR, 1999 
<LI><A href="http://www-2.cs.cmu.edu/~mccallum/">Andrew McCallum</A> 
<LI><A href="http://www-2.cs.cmu.edu/~knigam/">Kamal Nigam</A> 
<LI><A href="http://www.research.att.com/~lewis/">David D. Lewis</A> 
<LI><A href="http://robotics.stanford.edu/~sahami/aaai98/program.html">AAAI98 Workshop on Learning for Text Categorization</A> 
<LI><A href="http://www.itee.uq.edu.au/~aes/">Text Mining, Automatic Classification &amp; Indexing</A> </LI></UL></LI></UL>
<UL>
<LI><B>Document Clustering</B> 
<UL>
<LI><A href="http://www.cs.cmu.edu/~TextLearning/eriks-code/code.html">Clustering Text &amp; Useful Scripts</A> 
<LI><A href="http://www.sims.berkeley.edu/~hearst/sg-overview.html">Scatter/Gather</A> 
<LI><A href="http://www.cs.utexas.edu/users/inderjit/">I. Dhillon</A>, <A href="http://www.cs.utexas.edu/users/inderjit/public_papers/kdd_bipartite.ps.gz">Co-Clustering Documents and Words Using Bipartite Spectral Graph Partitioning</A>, KDD01. </LI></UL></LI></UL>
<UL>
<LI><B>Rule Mining from Text</B> 
<UL>
<LI><A href="http://www.cs.helsinki.fi/u/hahonen/">H. Ahonen-Myka</A> et. al, <A href="http://www.cs.helsinki.fi/u/hahonen/kdd97-C-1997-23.ps.gz">Applying Data Mining Techniques in Text Analysis</A>, Technical Report, 1997 
<LI><A href="http://www.cs.biu.ac.il/~feldman/">R. Feldman</A> et. al, <A href="http://www.cs.biu.ac.il/~feldman/fact.html">FACT</A>, 1996 
<LI><A href="http://www.cs.biu.ac.il/~feldman/">R. Feldman</A> et. al, <A href="http://www.cs.biu.ac.il/~feldman/kdd95.ps">Knowledge Discovery in Texts(KDT)</A>, KDD95 
<LI><A href="http://www-2.cs.cmu.edu/~rayid/newpage/index-linux.html">Rayid Ghani</A> 
<LI><A href="http://www.cs.helsinki.fi/u/mannila/">Heikki Mannila</A> </LI></UL></LI></UL>
<UL>
<LI><B>Relationship Mining</B> 
<UL>
<LI>Y. Park et. al, Hybrid Text Mining for Finding Abbreviations and Their Definitions, EMNLP-2001 
<LI>N. Sundaresan et. al, Mining the Web for Relations, <A href="http://www9.org/">WWW9</A>, 2000 
<LI><A href="http://ciir.cs.umass.edu/~larkey/">L. Larkey</A> et. al, Acrophile: An Automated Acronym Extractor and Server, ACM DL-2000 
<LI>J. Yi et. al, Mining the Web for Acronyms Using the Duality of Patterns and Relations, ACM CIKM-99 Workshop on Web Information and Data Management </LI></UL></LI></UL>
<UL>
<LI><B>Topic Detection</B> 
<UL>
<LI><A href="http://www.mitre.org/resources/centers/it/staffpages/clifton/">Chris Clifton</A> </LI></UL></LI></UL>
<UL>
<LI><B>Text Segmentation</B> 
<UL>
<LI><A href="http://www.sims.berkeley.edu/~hearst/tiling-about.html">UCBerkeley TextTiling</A> </LI></UL></LI></UL>
<UL>
<LI><B>Text Summarization</B> 
<UL>
<LI><A href="http://e-summarization-com.mycoolinternet.net/text-summarization/">Text Summarization Technology</A> </LI></UL></LI></UL>
<UL>
<LI><B>Knowledge Understanding</B> 
<UL>
<LI><A href="http://www.coling.uni-freiburg.de/~hahn/hahn.html">Udo Hahn</A> </LI></UL></LI></UL>
<UL>
<LI><B>Text Navigation, Visualization and User Interface</B> 
<UL>
<LI><A href="http://www.sims.berkeley.edu/~hearst/cac-overview.html">UCBerkeley Cat-a-Cone</A> 
<LI><A href="http://dsmall.www.media.mit.edu/people/dsmall/generals/shakespeare.html">MIT Shakespeare Project</A> 
<LI><A href="http://www.tdan.com/i008fe04.htm">Data Visualization</A> </LI></UL></LI></UL></LI></UL>
<UL></UL>
<UL>
<LI>
<H2>Methodology-Driven Text Mining</H2>
<UL>
<LI><B>Neural Networks</B> 
<UL>
<LI><A href="http://websom.hut.fi/websom/">WEBSOM - SOM-based Text Mining</A> 
<LI><A href="http://www.ifs.tuwien.ac.at/~dieter/">D. Merkl</A> et. al, <A href="ftp://ftp.ifs.tuwien.ac.at/pub/publications/nlp-chap11.ps.Z">Text Data Mining</A>, In <I>A Handbook of Natural Language Processing: Techniques and Applications for the Processing of Language as Text</I>, 1998 
<LI><A href="http://nnlab.tripod.com/">Vitali Schetinin</A> </LI></UL></LI></UL>
<UL>
<LI><B>Evolutionary Computation</B> 
<UL>
<LI><A href="http://www.ppgia.pucpr.br/~alex/">A. Freitas</A>, <A href="http://www.ppgia.pucpr.br/~alex/pub_papers.dir/AdvEC-bk.ps">A Survey of Evolutionary Algorithms for Data Mining and Knowledge Discovery</A>, In <I>Advances in Evolutionary Computation</I>, 2002. </LI></UL></LI></UL>
<UL>
<LI><B>Parallel Text Mining</B> 
<UL>
<LI><A href="http://www.iro.umontreal.ca/~chen/">J. Chen, <A href="http://www.iro.umontreal.ca/~chen/thesis/thesis.html">Parallel Text Mining for Cross-Language Information Retrieval Using a Statistical Translation Model </A></LI></UL></LI></UL>
<UL>
<LI><B>Hyperlinks Analysis</B> 
<UL>
<LI><A href="http://www.cs.berkeley.edu/~soumen/">Soumen Chakrabarti</A>, <A href="http://decweb.ethz.ch/WWW7/1898/com1898.htm">Automatic Resource Compilation by Analyzing Hyperlink Structure and Associated Text</A>, <A href="http://www7.scu.edu.au/">WWW7</A>, 1998 </LI></UL></LI></UL></LI></UL>
<UL>
<LI>
<H2>Application-Driven Text Mining</H2>
<UL>
<LI><B>Bioinformatics</B> 
<UL>
<LI><A href="http://www-csli.stanford.edu/~schuetze/ieeetutorial.html">Text Mining for Bioinformatics Tutorial</A> 
<LI><A href="http://www.pdg.cnb.uam.es/blaschke/">Text Mining for Molecular Biology</A> </LI></UL></LI></UL>
<UL>
<LI><B>Business and Customer Relationship Management(CRM)</B> 
<UL>
<LI>D. Evans, <A href="http://www.infonortics.com/searchengines/boston1999/evans/index.htm">Text Mining Towards Decision Supports</A>, 1999 
<LI>C. Halliman, Business Intelligence Using Smart Techniques: Environmental Scanning Using Text Mining and Competitor Analysis Using Scenarios and Manual Simulation </LI></UL></LI></UL></LI></UL>
<UL>
<LI>
<H2>Text Mining in the Noisy World</H2>
<UL>
<LI><B>Data Mining in the Noisy World</B> 
<UL>
<LI>Z. Tian et. al, An N-gram-based Approach for Detecting Approximately Duplicate Database Records, International Journal on Digital Libraries, 2001 
<LI><A href="http://www.research.whizbang.com/~wcohen/">W. Cohen</A>, <A href="http://www.research.whizbang.com/~wcohen/postscript/kdd-2000.ps">Hardening Soft Information Sources</A>, KDD00 
<LI>M. Hernandez et. al, Real-world Data is Dirty: Data Cleansing and The Merge/Purge Problem, Data Mining and Knowledge Discovery, 1998 
<LI><A href="http://www.cs.columbia.edu/~sal/merge-purge.html">Merge-Purge and Data Cleaning</A> </LI></UL></LI></UL>
<UL>
<LI><B>Machine Learning in the Noisy World</B> 
<UL>
<LI><A href="http://www.cs.washington.edu/homes/pedrod/">P. Domingos</A>, <A href="http://www.cs.washington.edu/homes/pedrod/mlj96.ps.gz">Unifying Instance-Based and Rule-Based Induction</A>, Machine Learning, 1996 
<LI><A href="http://www.cs.umsl.edu/~janikow/">C. Janikow</A>, <A href="http://www.cs.umsl.edu/~janikow/fid/">FID: Fuzzy Decision Trees</A> </LI></UL></LI></UL>
<UL>
<LI><B>Information Retrieval in the Noisy World</B> 
<UL>
<LI>G. Bordogna et. al, Modeling Vagueness in Information Retrieval, ESSIR, 2000 </LI></UL></LI></UL>
<UL>
<LI><B>Databases in the Noisy World (a.k.a. Information Integration)</B> 
<UL>
<LI><A href="http://www.cs.ust.hk/~luhj/">H. Lu</A> et. al, Discovering and Reconciling Semantic Conflicts: A Data Mining Conflicts, DS-7, 1997 </LI></UL></LI></UL></LI></UL>
<UL>
<LI>
<H2>Tools for Text Mining (Or Related Fields)</H2>
<UL>
<LI><B>Information Extraction</B> 
<UL>
<LI><A href="http://www.ai.sri.com/~appelt/">D. Appelt et. al, <A href="http://www.ai.sri.com/~appelt/ie-tutorial/IJCAI99.pdf">Introduction to Information Extraction Technology</A>, IJCAI-99 Tutorial 
<LI>H. Cunningham, <A href="ftp://ftp.dcs.shef.ac.uk/home/hamish/auto_papers/Cun99c.ps.gz">Information Extraction: A User Guide</A>, Technical Report, 1999 
<LI><A href="http://www.isi.edu/~muslea/">I. Muslea</A>, <A href="http://www.isi.edu/~muslea/PS/ml4ie-aaai99.ps">Extraction Patterns for Information Extraction</A>, AAAI-99 Workshop on Machine Learning for Information Extraction 
<LI><A href="http://www.isi.edu/~muslea/">I. Muslea</A>, <A href="http://www.isi.edu/~muslea/PS/epiReview.ps">Extraction Patterns: From Information Extraction to Wrapper Induction</A>, Technical Report, 1998 
<LI>C. Cardie, <A href="http://www.cs.cornell.edu/Info/People/cardie/papers/ai-mag.ps">Empirical Methods in Information Extraction</A>, AI Magazine, 1997 
<LI><B>Repository</B> 
<UL>
<LI><A href="http://www.isi.edu/~muslea/">I. Muslea</A>, <A href="http://www.isi.edu/~muslea/RISE/">RISE: Repository of Information Extraction</A> </LI></UL>
<LI><B>Workshops</B> 
<UL>
<LI><A href="http://www.isi.edu/~muslea/RISE/ML4IE/">AAAI-99 Workshop on Machine Learning for Information Extraction</A> </LI></UL>
<LI><B>Machine Learning Techniques for Information Extraction</B> 
<UL>
<LI><A href="http://www.acs.ilstu.edu/faculty/mecalif/calif.htm">M. Califf</A> et. al, <A href="ftp://ftp.cs.utexas.edu/pub/mooney/papers/rapier-aaai99.ps.gz">Relational Learning of Pattern-Match Rules for Information Extraction</A>, AAAI-99 
<LI><A href="http://www.cs.wisc.edu/~craven/">Mark Craven</A> 
<LI><A href="http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/mitchell/ftp/tomhome.html">Tom Mitchell</A> 
<LI>Stephen Soderland </LI></UL>
<LI><B>Statistical Information Extraction</B> 
<UL>
<LI><A href="http://www-2.cs.cmu.edu/afs/cs/user/dayne/www/dayne-home.html">Dayne Freitag</A> 
<LI><A href="http://www-connex.lip6.fr/~zaragoza/index_eng.html">Hugo Zaragoza</A> </LI></UL></LI></UL>
<UL>
<LI><B>Wrapper Induction</B> 
<UL>
<LI><A href="http://www.cs.ucd.ie/staff/nick/home/">N. Kushmerick</A>, <A href="http://www.cs.ucd.ie/staff/nick/home/research/download/kushmerick-aij2000.pdf">Wrapper induction: Efficiency and Expressiveness</A>, Artificial Intelligence, 2000 </LI></UL></LI></UL>
<UL>
<LI><B>Information Extraction and Text Mining</B> 
<UL>
<LI><A href="http://www.smi.ucd.ie/ATEM2001/">IJCAI-2001 Workshop on Adaptive Text Extraction and Mining</A> </LI></UL>
<LI><B>Information Extraction and Information Retrieval</B> 
<UL>
<LI>J. Bear et. al, <A href="http://trec.nist.gov/pubs/trec6/papers/sri.ps.gz">Using Information Extraction to Improve Document Retrieval</A>, TREC6, 1997 </LI></UL></LI></UL></LI></UL>
<UL>
<LI><B>Natural Language Processing</B> 
<UL>
<LI>Computational Linguistics Journal 
<LI><A href="http://www.coling2002.sinica.edu.tw/">COLING-2002</A> | <A href="http://www.acl02.org/">ACL-2002</A> 
<LI><A href="http://www.sultry.arts.usyd.edu.au/cmanning/">C. Manning</A> et. al, <A href="http://nlp.stanford.edu/fsnlp/promo/">Foundataions of Statistical Natural Language Processing</A> 
<LI><A href="http://www.colorado.edu/ling/jurafsky/">D. Jurafsky</A> et. al., <A href="http://www.cs.colorado.edu/~martin/slp.html">Speech and Language Processing</A> 
<LI><A href="http://liawww.epfl.ch/cgi-bin/Pubs/complete_list">LIA Publication</A> 
<LI><B>Text Mining for Natural Language Processing</B> 
<UL>
<LI><A href="http://www.cs.ualberta.ca/~lindek/">D. Lin</A> et. al, <A href="http://www.cs.ualberta.ca/~ppantel/Download/Papers/jnle01.ps">Discovery of Inference Rules for Question-Answering</A>, Journal of Natural Language Engineering, 2001 
<LI><A href="http://www.cs.ualberta.ca/~lindek/">D. Lin</A> et. al, <A href="http://www.cs.ualberta.ca/~ppantel/Download/Papers/kdd01-2.ps">Induction of Semantic Classes from Natural Language Text</A>, KDD-2001 </LI></UL>
<LI><B>Natural Language Processing and Databases</B> 
<UL>
<LI><A href="http://www.dsv.su.se/~maria/NLDB/nldb02.html">NLDB-2002</A> </LI></UL></LI></UL></LI></UL>
<UL>
<LI><B>Machine Learining</B> 
<UL>
<LI><A href="http://www.wkap.nl/prod/j/0885-6125">Machine Learning Journal</A> 
<LI><A href="http://www.cse.unsw.edu.au/~icml2002/">ICML-2002</A> 
<LI><B>Repository</B> 
<UL>
<LI><A href="http://www1.ics.uci.edu/~mlearn/MLRepository.html">UCI Machine Learning Repository</A> </LI></UL>
<LI><B>Machine Learning on Text</B> 
<UL>
<LI><A href="http://www.cs.wisc.edu/~craven/cs838-f00.html">UW-Madison: Machine Learning for Text Analysis</A> (2000) 
<LI><A href="http://www-ai.ijs.si/DunjaMladenic/ICML99/Wsh2.html">ICML-99 Workshop on Machine Learning in Text Data Analysis</A> </LI></UL></LI></UL></LI></UL>
<UL>
<LI><B>Information Retrieval</B> 
<UL>
<LI><A href="http://www.wkap.nl/prod/j/1386-4564">Information Retrieval Journal</A> 
<LI><A href="http://www.sigir2002.org/">ACM SIGIR-2002</A> 
<LI><A href="http://www.dcs.gla.ac.uk/idom/ir_resources/">IR Resources</A> 
<LI><A href="http://192.115.216.71/webir/index.html">WebIR</A> 
<LI><A href="http://ciir.cs.umass.edu/">The Center for Intelligent Information Retrieval at UMass</A> 
<LI><A href="http://www.dcc.uchile.cl/~rbaeza/">R. Baeza-Yates</A> et. al, <A href="http://sunsite.dcc.uchile.cl/irbook/">Modern Information Retrieval</A> 
<LI><B>Information Retrieval for Text Mining</B> 
<UL>
<LI>J. Neto et. al, <A href="http://www.ppgia.pucpr.br/~alex/pub_papers.dir/PADD2000.ps">Document Clustering and Text Summarization</A> </LI></UL>
<LI><B>Information Retrieval on the Web</B> 
<UL>
<LI><A href="http://www.research.microsoft.com/research/db/debull/A00sept/issue.htm">Data Engineering Special Issue on Next-Generation Web Search</A> 
<LI><A href="http://archive.org/aaai2000schedule.html">AAAI-2000 Workshop on AI for Web Search</A> 
<LI><A href="http://www.cacs.louisiana.edu/~raghavan/">V. Raghavan</A>, <A href="http://www.cacs.louisiana.edu/~raghavan/internet97.pdf">Information Retrieval on the World-Wide Web</A>, 1997 </LI></UL>
<LI><B>Information Retrieval and Machine Learning</B> 
<UL>
<LI><A href="http://www-cse.ucsd.edu/users/rik/">R. Belew</A> et. al, <A href="http://www-cse.ucsd.edu/users/rik/talks/MLinIR/MLIA.html">Machine Learning and Information Retrieval</A> </LI></UL>
<LI><B>Information Retrieval using Natural Language Processing</B> 
<UL>
<LI><A href="http://www.cs.kun.nl/~avgerino/">A. Arampatzis</A>, <A href="http://www.cs.kun.nl/~avgerino/Avi_Arampatzis/publications/HTMLized/encyclop/encyclop.html">Linguistically-Motivated Information Retrieval</A> </LI></UL></LI></UL></LI></UL>
<UL>
<LI><B>Data Mining</B> 
<UL>
<LI><A href="http://www.digimine.com/usama/datamine/">Data Mining and Knowledge Discovery Journal</A> 
<LI><A href="http://www.acm.org/sigkdd/kdd2002/">ACM KDD-2002</A> | <A href="http://kis.maebashi-it.ac.jp/icdm02/">ICDM-2002</A> 
<LI><A href="http://www-sal.cs.uiuc.edu/~hanj/">J. Han</A> et. al, <A href="http://www-sal.cs.uiuc.edu/~hanj/DM_Book.html">Data Mining: Concepts and Techniques</A>, Morgan Kaufmann, 2001 
<LI><A href="http://www.kdnuggets.com/">KDNuggets Directory</A> </LI></UL></LI></UL>
<UL>
<LI><B>Databases</B> 
<UL>
<LI><A href="http://link.springer.de/link/service/journals/00778/index.htm">VLDB Journal</A> 
<LI><A href="http://www-db.cs.wisc.edu/sigmodpods2002/">ACM SIGMOD-2002</A> 
<LI>D. Sullivan, <A href="http://www.wiley.com/Corporate/Website/Objects/Products/0,9049,36655,00.html">Document Warehousing and Text Mining</A> </LI></UL></LI></UL>
<UL>
<LI><B>Web</B> 
<UL>
<LI><A href="http://www.kluweronline.com/issn/1386-145X">World Wide Web Journal</A> 
<LI><A href="http://www2002.org/">WWW-2002</A> 
<LI>WWW + Databases: WebDB </LI></UL></LI></UL>
<UL>
<LI><B>Digital Libraries</B> 
<UL>
<LI><A href="http://www.dlib.org/">D-Lib Forum &amp; Magazine</A> 
<LI><A href="http://www.jcdl2002.org/">ACM JCDL-2002</A> </LI></UL></LI></UL>
<UL>
<LI><B>Intelligent Agents</B> 
<UL>
<LI><A href="http://www.wkap.nl/prod/j/1387-2532">Autonmous Agents and Multi-Agent Systems Journal</A> 
<LI><A href="http://lia.deis.unibo.it/aamas2002/">AAMAS-2002</A> 
<LI><A href="http://agents.umbc.edu/">Agent Web</A> 
<LI><A href="http://www.botspot.com/faqs/">BotSpot FAQ</A> 
<LI><B>Web Agent</B> 
<UL>
<LI>C. Petrie, <A href="http://www-cdr.stanford.edu/NextLink/Expert.html">Agent-Based Engineering, the Web, and Intelligence</A>, IEEE Expert, 1996 
<LI><A href="http://www1.ics.uci.edu/~pazzani/RTF/AAAI.html">Syskill &amp; Webert: Identifying Interesting Web Sites</A> </LI></UL>
<LI><B>Agent and Information Retrieval</B> 
<UL>
<LI><A href="http://agents.umbc.edu/ir/">Agent-Based IR</A> </LI></UL></LI></UL>
<LI><A href="http://www.cs.rutgers.edu/~hirsh/">Haym Hirsh</A> 
<LI><A href="http://www.stern.nyu.edu/~fprovost/">Foster Provost</A> 
<LI><A href="http://www.ai.mit.edu/~jrennie/">Jason Rennie</A> 
<LI><A href="http://www-2.cs.cmu.edu/~jslttery/">Sean Slattery</A> 
<LI><A href="http://www-cse.ucsd.edu/users/elkan/">Charles Elkan</A> 
<LI><A href="http://www-2.cs.cmu.edu/~christos/">Christos Faloutsos</A> 
<LI><A href="http://www.cm.deakin.edu.au/webb/">Geoff Webb</A> 
<LI><A href="http://www.cs.ualberta.ca/~zaiane/">Osmar R. Zaiane</A> 
<LI><A href="http://www-personal.umich.edu/~wfan/">W. Fan</A> 
<LI><A href="http://www.comp.nus.edu.sg/~liub/">Bing Liu</A> </LI></UL></LI></UL>
<UL>
<LI>
<H2>Institutions</H2>
<UL>
<LI><A href="http://www.cs.utexas.edu/users/ml/">UT-Austin Machine Learning Group</A> 
<LI><A href="http://www.cs.cmu.edu/~TextLearning/">CMU Text Learning Group</A> 
<LI><A href="http://www.cs.helsinki.fi/research/pmdm/datamining/">University of Helsinki FDK Data Mining and Machine Learning Group</A> 
<LI><A href="http://www.coling.uni-freiburg.de/">Albert-Ludwigs-University Computational Linguistic Research Group</A> 
<LI><A href="http://www.cs.waikato.ac.nz/~nzdl/textmining/">University of Waikato Text Mining Group</A> 
<LI><A href="http://textmining.krdl.org.sg/">Text Mining at Kent Ridge Digital Lab(KRDL), Singapore</A> 
<LI><A href="http://www.pmsi.fr/textmine.htm">Text Mining at PMSI, France</A> 
<LI><A href="http://ruby.doc.ic.ac.uk/">Imperial College Data Mining Group</A> 
<LI><A href="http://www.kuenstliche-intelligenz.de/Thema/Text-Mining.htm">Text Mining at KI, Germany</A> 
<LI><A href="http://www.xrce.xerox.com/research/mltt/">XRCE MLTT</A> 
<LI><A href="http://liawww.epfl.ch/~chaps/tln/">LIA TLN</A> </LI></UL></LI></UL>
<UL>
<LI>
<H2>Projects</H2>
<UL>
<LI><A href="http://www.almaden.ibm.com/cs/k53/clever.html">IBM Clever</A> 
<LI><A href="http://www.research.ibm.com/dar/">IBM Data Abstraction</A> 
<LI><A href="http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/theo-11/www/wwkb/">Web-&gt;KB</A> 
<LI><A href="http://www-2.cs.cmu.edu/~webwatcher/">WebWatcher</A> 
<LI><A href="http://www-db.stanford.edu/~gravano/starts_home.html">STARTS</A> 
<LI><A href="http://infolab.cs.uchicago.edu/faqfinder/">FAQFinder</A> 
<LI><A href="http://cui.unige.ch/AI-group/textmine.html">Combining Machine Learning and Natural Language Processing for Knowledge Discovery in Text Corpora</A> 
<LI><A href="http://www.trl.ibm.com/projects/s7710/tm/index_e.htm">IBM-TRL Text Mining</A> </LI></UL></LI></UL>
<UL>
<LI>
<H2>Products</H2>
<UL>
<LI><A href="http://www.brosisii.com/">Brosis Xcise</A> 
<LI><A href="http://www.insight.com.ru/">iCrossReader</A> 
<LI><A href="http://www.software.ibm.com/data/iminer/fortext/">Intelligent Miner for Text</A> (IBM) 
<LI><A href="http://www.leximancer.com/overview.html">Leximancer</A> 
<LI><A href="http://www.sra.com/services/tm.html">SRA</A> 
<LI><A href="http://www.temis-group.com/">Temis</A> 
<LI><A href="http://www.megaputer.com/products/ta/">TextAnalyst</A> (Megaputer) 
<LI><A href="http://www.mitre.org/pubs/edge/august_00/mani.htm">Text Mining by Filter Composition</A> 
<LI><A href="http://www.dwinfocenter.org/docum.html">Text Mining Tools</A> (The Data Warehousing Information Center) 
<LI><A href="http://www.thevantagepoint.com/">VantagePoint</A> 
<LI>VisualText (<A href="http://www.textanalysis.com/">TextAnalysis</A>) 
<LI><A href="http://www.wizsoft.com/">WizSoft</A> 
<LI><A href="http://www.simstat.com/wordstat.htm">WordStat</A> (Provalis Research) 
<LI>Alembic Workbench (MITRE) 
<LI>INTEX (LADL) 
<LI>LexGram (University of Stuttgart) 
<LI>LinguistX Platform (InXight) 
<LI>PAGE (DFKI) 
<LI>Pinocchio (ITC-Irst) </LI></UL></LI></UL>]]></description>
</item>
</channel>
</rss>