文字文件内容:
{“progress”:“30”,“type”:“info”,“message”:“检索特定网站 管理层的信息 系统 “},” 2。 “:{” 进步 “:” 2" , “类型”: “信息”, “消息”:“自动 安装 发起 “},” 5 “:{” 进步 “:” 20.25" , “类型”: “信息”, “消息”:“检查 连接到互联网和管理 系统 “}},” install_progress。 “:0,” LOGFILENAME “:” FWF_2018-4-5_12_58_57.log “},” 标记 “:” gDDJ7uZx“}
匹配字符串:Auto Install is completed
我正在使用此代码:
findstr /c "Auto Install is completed" "test.txt"
if %errorlevel%==0 (
echo ERROR:Auto Install is completed!
SET vaildJSONData=0
)
问题:即使此字符串不存在,上面的代码也会返回
请帮助我。
答案 0 :(得分:1)
根据findstr的帮助:
/ C:string使用指定的字符串作为文字搜索字符串。
请在/c
之后尝试使用冒号:
findstr /c:"Auto Install is completed" "test.txt"
如果你不这样做,它就会忽略/c
。
答案 1 :(得分:0)
当FindStr
可以完美地完成工作时,绝对不需要使用Find
进行基本字符串搜索:
Find /I "Auto Install is completed"<"file.json">Nul&&(Set "validJSONData=0"
Echo ERROR:Auto Install is completed!)