我有一个批处理文件,它会给出文件名和文件名。该文件中的行数。它适用于.txt文件,但我试图检查.mea文件的计数,它显示不正确的计数。 (它显示非常大的数量)。下面是代码,请建议正确读取.mea文件的任何更正:
@echo off
(
for /R %%n IN (*.*) do (
for /F "tokens=1,*" %%f in ('find /V /C "-------------" "%%n"') do (
echo %%n : %%g
)
)) >output.txt
答案 0 :(得分:0)
您的.mea
文件很可能是二进制类型文件,其中Find
所理解的行终止符不被视为您理解的终结符。 (...没有真正的.mea文件来检查我们无法帮助您验证)
但我认为你至少可以进一步改进你的代码:
...单个目录
@Echo Off
( For /F "Tokens=1* Delims=- " %%A In ('Find/V /C "" *.* 2^>Nul'
) Do Echo=%%A %%B)>"SomewhereElse\Output.txt"
...递归
@Echo Off
(For /R %%A In (*) Do For /F "Tokens=1* Delims=- " %%B In (
'Find/V /C "" "%%A" 2^>Nul') Do Echo=%%B %%C)>"SomewhereElse\Output.txt"
在这两种情况下,除非Output.txt
写入SomewhereElse
,否则它会在其内容中显示为条目。