bat统计文件夹下所有TXT文件的某个关键字的个数。

文件夹下有多个txt文件,1.txt、2.txt、。。。要求统计每个文件的关键字“搜索比如“maccz”这个词出现的个数,然后输出文件名,关键字个数结果格式为1.txt2... 文件夹下有多个txt文件,1.txt、2.txt、。。。要求统计每个文件的关键字“搜索比如“maccz”这个词出现的个数,然后输出
文件名,关键字个数结果格式为
1.txt 201
2.txt 305
.....
求救大神
展开
 我来答
匿名用户
2015-01-19
展开全部
最好设置FF为不同的目录。否则第二次会把统计的txt也算进去。
@echo off
set str=maccz
set FF=统计到.txt
set fso=createobject("scripting.filesystemobject")
>temp.vbs echo a=ubound(split(%fso%.opentextfile(wscript.arguments(0),1).readall,"%str%"))
>>temp.vbs echo a=wscript.arguments(0) ^& " " ^& a
>>temp.vbs echo %fso%.OpenTextFile("%FF%",8,true).writeline a
for /f "tokens=*" %%i in ('dir /a-d/b/s *.txt') do (
cscript /nologo temp.vbs "%%i")
pause
更多追问追答
追问
谢谢,我还有一个问题,怎么统计这些文件的行数,输出结果同样的格式
1.txt 201
2.txt 305
。。。
追答
包含所有换行。空行。上面最后望了把临时文件temp.vbs 删除。手动删了吧。
@echo off
set FF=nnew.txt
set fso=createobject("scripting.filesystemobject")
>temp.vbs echo set file=%fso%.opentextfile(wscript.arguments(0))
>>temp.vbs echo n=file.readall
>>temp.vbs echo a=file.line
>>temp.vbs echo a=wscript.arguments(0) ^& " " ^& a
>>temp.vbs echo %fso%.OpenTextFile("%FF%",8,true).writeline a
for /f "tokens=*" %%i in ('dir /a-d/b/s *.txt') do (
cscript /nologo temp.vbs "%%i")
del temp.vbs
pause
匿名用户
2015-01-19
展开全部
用notepad++有这个功能
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式