Batch file 带有空格和空行的批处理文件findstr
下面我有一个批处理脚本,它从参考文本文件(testException.txt)逐行读取带空格的字符串。我正在使用findstr在my text.txt中搜索,以查找与引用文件中字符串的任何匹配项。如果存在任何匹配项,我希望将text.txt中的所有内容输出到错误文本文件并退出循环Batch file 带有空格和空行的批处理文件findstr,batch-file,Batch File,下面我有一个批处理脚本,它从参考文本文件(testException.txt)逐行读取带空格的字符串。我正在使用findstr在my text.txt中搜索,以查找与引用文件中字符串的任何匹配项。如果存在任何匹配项,我希望将text.txt中的所有内容输出到错误文本文件并退出循环 :find.bat @echo off SETLOCAL ENABLEDELAYEDEXPANSION set source=testException.txt set location=text.txt f
:find.bat
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
set source=testException.txt
set location=text.txt
for /f "tokens=* delims=" %%L IN (!source!) DO (
@findstr /B /I /C:"%%L" "!location!"
if %ERRORLEVEL% EQU 0 (type !location! >> Error.txt goto:eof) else (call)
)
pause
当我执行脚本时,它输出的模式数是testException.txt中模式数的倍。似乎我的goto:eof并没有结束我的for循环。下面是我的text.txt和testException.txt。非常感谢您对更好方法的任何帮助和建议
text.txt
你好,你好吗
我很好
哈哈,苹果123来了
testException.txt
橙色321
苹果123
lol 423在
>Error.txt
和goto:eof
之间添加一个符号,你能用findstr/b/i/l/g:“!source!”!location!”
代替循环吗?谢谢Happy Face。添加&为我做的。