我正在使用命令:
find /c "abc" "C:\Users\abc\Desktop\project\string.txt"
输出:
---------- C:\Users\abc\Desktop\project\string.txt: 4
我想将此值4
分配给变量,以便我可以将其用于if
语句。
答案 0 :(得分:2)
我会用:
For /F %%A In ('Find /C "abc"^<"C:\Users\abc\Desktop\project\string.txt"') Do (
Set "mlc=%%A")
您的%mlc%变量将保持匹配的行数。
答案 1 :(得分:0)
我不确定这是否是最好的方法,但它确实有效:
find /c "abc" "C:\Users\abc\Desktop\project\string.txt" > tmpFile
set /p myvar= < tmpFile
del tmpFile
答案 2 :(得分:0)
使用你的snytax输出为---------- C:\Users\abc\Desktop\project\string.txt: 4
还有另一种语法:type file.txt|find /c "abc"
,它为您提供了漂亮的输出:
15
要将其变为变量,请使用for /f
循环:
for /f %%a in ('type file.txt^|find /c "abc"') do set count=%%a
echo %count%
(直接在命令行上使用(不在批处理文件中)使用%a
代替%%a
)