BAT批处理,判断变量中,Find是否找到了包含指定的字符串?

相信有很多的时候,需要判断在文件或者字符串中,是否包含某个特定的字符串。从网上找几个人家写的示例参考吧

 

示例一:我想实现如果功能如下:
ping一个IP,用find查找ping的结果(设发现"bytes=32"字符串,就说明ping通)。然后用if来判断find是否找到了"bytes=32"字符串。如果找到就"echo ping通",没找到就"echo 未ping通"。

用||和&&即可判断。
&&表示如果前面的代码执行成功,则继续执行
||表示如果前面的代码执行失败,则继续执行
@ping www.baidu.com>nul&&echo ping通||echo 未ping通

或者用if
@echo off
ping www.baidu.com |findstr "bytes=32">nul
if %errorlevel% equ 0 (echo ping通) else echo 未ping通。
pause


示例二:在文件中查找字符串
@echo off
find /i "a" a.txt>nul&&echo ok||echo no
pause

 

出处:http://www.bathome.net/thread-2174-1-1.html

http://www.bathome.net/thread-990-1-1.html

=========================================================================================

示例三:使用变量保存结果
@echo off & SET 变量1="ABCDEFG"
echo %变量1%|find /i "CD">nul 2>nul&&echo TURE||echo FALSE
pause>nul

@echo off
set "变量1=abcdefghijklmnopq"
set 返回代码=
echo %变量1%|findstr /c:"abc">nul 2>nul&&set 返回代码=true||set 返回代码=false

 

出处:https://zhidao.baidu.com/question/533799240.html

posted on 2021-04-15 13:56  jack_Meng  阅读(8289)  评论(0编辑  收藏  举报

导航