Board logo

标题: [求助]查找指定文件夹下的文件 [打印本页]

作者: coldface     时间: 2010-9-10 23:35    标题: [求助]查找指定文件夹下的文件
需求:
查找指定文件夹下的文件,(不查找此文件夹下的子目录),读取文件并把文件内容写到另个文件。
比如要查找磁盘所有HA文件夹下的WS.txt文件,并把ws.txt的文件内容输出到R.txt中。

如下写的只能搜索到WS.txt以及其路径,但是并不能只显示HA文件夹下的,并且不能实现把ws.txt内容copy到r.txt中
@echo off
for %%i in (c:,d:,e:,f:) do dir /s /b %%i\WS.txt >>filepath.txt 2>nul
for /f %%a in ( filepath.txt) do start %%a

麻烦给个帮助。

Last edited by coldface on 2010-9-13 at 10:24 ]

作者: coldface     时间: 2010-9-11 17:29
怎么把filepath.txt里保存的路径中的文件写入到另一个文件?

作者: coldface     时间: 2010-9-11 17:56
哦 想出来了

@echo off
for %%i in (c:,d:,e:,f:) do dir /s /b %%i\ws.txt >>filepath.txt 2>nul
for /f %%a in ( filepath.txt) do (
for /f "usebackq" %%j in (`type %%~sa`) do echo %%j >R.txt
)

作者: coldface     时间: 2010-9-13 10:07
我上面写的有问题,如果ws.txt在如下目录存在:
d:\Program Files\xj1\hal_XJQ\ddzv\Data\Btn\video\ws.txt
d:\Program Files\xj1\hal_XJQ\LuckyDDZ\Data\Ani\ws.txt
d:\Program Files\xj1\hal_XJQ\LuckyDDZ\Data\Other\ws.txt
d:\Program Files\xj11\hal_XJQ\ws.txt
d:\Program Files\xj16XJ\halQQ\ws.txt
那么我如果只想读取d:\Program Files\xj11\hal_XJQ这个根目录下的ws.txt,不读取其子目录下的ws.txt,该如何处理?
另外写入到wj.txt文件那步也有问题 不应该是%~sa,因为未包饭对应的目录项,也不明白怎么写入了/

Last edited by coldface on 2010-9-13 at 10:31 ]

作者: coldface     时间: 2010-9-13 15:24
帮助下,谢谢

作者: coldface     时间: 2010-9-14 10:38
顶下!

作者: DXSX     时间: 2010-9-14 11:10
@echo off & setlocal ENABLEDELAYEDEXPANSION
for %%c in (c: d: e: f:) do (
if exist "%%c\Program Files\xj11\hal_XJQ\ws.txt" type "%%c\Program Files\xj11\hal_XJQ\ws.txt" >>r.txt
)


另外发现你的 “根目录” 概念不清,学习一下 dos 根目录的概念。

按照你的思路修改:
@echo off
for %%i in (c:,d:,e:,f:) do dir /s /b %%i\ws.txt >>filepath.txt 2>nul
for /f %%a in ( filepath.txt) do (
if /I "%%~pa" EQU "\Program Files\xj11\hal_XJQ\" TYPE "%%a" >>R.txt
)

Last edited by DXSX on 2010-9-14 at 11:48 ]

作者: coldface     时间: 2010-9-14 22:58
好的 感谢指教。
您给的程序例子好像不能往R.txt里写