天天看点

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

示例二:在文件中查找字符串

find /i "a" a.txt>nul&&echo ok||echo no

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

示例三:使用变量保存结果

@echo off & SET 变量1="ABCDEFG"

echo %变量1%|find /i "CD">nul 2>nul&&echo TURE||echo FALSE

pause>nul

set "变量1=abcdefghijklmnopq"