发布网友 发布时间:2022-02-26 10:29
共6个回答
热心网友 时间:2022-02-26 11:59
用%errorlevel%来判断,errorlevel的值是上一条命令的返回值。
这里用find的话,则:
%errorlevel%为0的时候,表示find找到字符串
%errorlevel%为1的是偶,表示find找不到字符串
假设1.txt为目标文件:
@echo off热心网友 时间:2022-02-26 13:17
@echo off
::假设文本名称为a.txt,则:
>nul find "run" a.txt&&start "" "c:\run.exe"||echo no run
热心网友 时间:2022-02-26 14:51
后面加管道符号&&、|| 就可以进行判断了。返回值%errorlevel%也可以,不过find的返回值不稳定,不如管道符号好用。
热心网友 时间:2022-02-26 16:43
代码改成这样才可以的:@echo off
set flag=
for /f %%i in ('findstr /i "run" test.txt') do set flag=1
if not defined flag (echo no run &pause&exit) else (echo run &pause) 这是我的回答,谢谢采纳!
热心网友 时间:2022-02-26 18:51
@echo off
for /f %%i in ('find /i "run" test.txt') do set flag=1
if not defined flag echo no run&&pause&&exit
start c:\run.exe
热心网友 时间:2022-02-26 21:15
@echo offfor /f %%i ('type a.txt ^|find "run"') do set ok=%%iif not defined ok echo no runpause>nul