findstr 命令用在批处理中能引用变量吗?

2024年11月22日 12:31
有3个网友回答
网友(1):

@echo off&setlocal enabledelayedexpansion
set/p a=请输入查询的内容:
echo 查询结果:&echo *//---------------------------\\*&echo 查询内容 ^| 行数
for /f "delims=" %%a in ('type %1')do set /a b+=1&for /f "delims=" %%b in ('echo %%a^|findstr "%a%"')do echo %%b 在第!b!行
echo *//---------------------------\\*
set/p=查询完毕.nul&cls&exit

如果要查询文件就把要查询的文件拖到批处理图标上就可以了,
比如要查询1.txt就拖到1.bat图标上就ok了!然后再自己输入要查询指定的文字或(变量)!

实际上查询的话也不是很方便!

网友(2):

同意楼上,直接定义就可以用了:

@echo off
set /p a=请输入你要查询的变量:

这里直接就能用了:在1.txt里找%a%的值
findstr "%a%" "1.txt"

这个%a%就是变量名

网友(3):

@echo off
set /p a=请输入你要查询的变量:
findstr "%a%" "1.txt"
pause

1.txt为你要查询的文件

我能想到的就是这样了。。。