Board logo

标题: [求助] 请教DOS71下如何通过不完全文件名查找特定文件 [打印本页]

作者: 7Anj     时间: 2005-2-24 00:00    标题: [求助] 请教DOS71下如何通过不完全文件名查找特定文件

RT
作者: Climbing     时间: 2005-2-24 00:00
要看你的文件名怎么一个不完全法了,最好举例说明。例如你的文件名中含有一个固定的字符串(位置不限),例如含有abc这个字符串,那么可以用:dir /a/s | find /i "abc"
作者: chujiafu     时间: 2005-2-24 00:00
试试通配符?和* 。用dir 和?、 *相配合。
作者: 7Anj     时间: 2005-2-24 00:00
首先谢谢指导!反馈信息:2楼方法有效 但是太慢了 需要查找10多分钟 新问题:1 如何提高查找效率? 2 如何在查找结果中显示特定文件的路径
作者: Climbing     时间: 2005-2-24 00:00
1、查找效率是不可能太有效提高的,因为总之是遍历目录区的操作,除非你有效缩小搜索范围。
2、我上面的dir命令还是有些问题(确实不能显示路径),如果你确定只是搜索文件,把上面的命令稍加修改即可:
dir /a-d /b /s [PathToFind] | find /i "要搜索的字符串"
例如:dir /a-d /b /s c:\windows | find /i "abc"
/a-d 表示只搜索文件,/b表示只显示文件路径及文件名,/s就是表示遍历。

[此贴子已经被作者于2005-2-25 18:17:18编辑过]



作者: bush     时间: 2005-2-25 00:00
dir /b /s > file.txtedit file.txt搜索文本内容快吧?
作者: 7Anj     时间: 2005-2-26 00:00
在网站上看的:可以用chkdsk /v于是我这样用:chkdsk/v 路径 | find "文件名"/i感觉速度相对较快
作者: DOSforever     时间: 2005-2-28 00:00
4DOS / 4NT命令解释器可以做到这样,以DIR为例,与COMMAND.COM相同功能的就不举例了:dir *7Anj                       查找凡是以“ 7Anj ”字符结尾的文件名dir *7Anj*                     查找凡是文件名中包含有“ 7Anj ”字符窜的文件,不管“ 7Anj ”出现在什么位置上dir [0-7]n[a-j]*                查找第一个字符是以0或1或2……一直到7开头的,第三个字符是以a一直到j开头的文件名dir [0357][adj]*              查找第一个字符是以0或3或5或7开头的,第二个字符是以a或d或j开头的文件名dir ?[!0357][!a-dg-j]*       查找第二个字符中不包含0、3、5、7,第三个字符中不包含a到d和g到j开头的文件名dir ??[abc]*[def]*.[pq]*  我就不多说了吧