根据关键字数据库计算匹配项?



这是通过将每个目录的内容列出到一个列表中(放置在每个目录中(来将未知文件分类到未知目录中的尝试。单个新文件%filename%被划分为单词(按空格(,这些单词用于搜索每个目录中keywords.txt的文件数据库。我应该将这些点击数放在一起计算,以确定文件属于哪里,但我的计数系统根本不起作用。

set "count="
:: feed a list of all subdirectories
for /f "delims=" %%i in ('dir /s /b /a:d') do (
rem reset keywords, then rebuild 
echo. >"%%~ikeywords.txt" & for /f "delims=" %%a in ('dir "%%~i*.*" /b /a:-d') do echo %%~na >>"%%~ikeywords.txt"
@echo on
for %%a in (%filename%) do find /i /c "%%a" "%%~ikeywords.txt" && set count+=1
@echo off
echo count is %count%
)

一个线索可能是最后一行不产生%count%,只是count is

for %%a in (%filename%) do find /i /c "%%a" "%%~ikeywords.txt" && set /A count+=1
@echo off
CALL echo count is %%count%%

set命令中的/A调用算术模式;您的代码只需将变量count+设置为值1

call调用报告所需值的子外壳。关于这个问题,一定有成千上万的SO文章。尝试搜索delayed expansion

最新更新