天天看點

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"