Windows バッチ ファイルに、文字列 'abcdefg' があります。「bcd」が文字列に含まれているかどうかを確認したいのですが、それぞれを変数にするか、文字列のパラメーターを渡します。
このソリューションは近いですが、変数ではなく定数を使用します。 バッチ ファイル: 部分文字列が文字列内にあるかどうかを検索します (ファイル内ではありません)。
Windows バッチ ファイルに、文字列 'abcdefg' があります。「bcd」が文字列に含まれているかどうかを確認したいのですが、それぞれを変数にするか、文字列のパラメーターを渡します。
このソリューションは近いですが、変数ではなく定数を使用します。 バッチ ファイル: 部分文字列が文字列内にあるかどうかを検索します (ファイル内ではありません)。
1つ試してください:
set "var=abcdefg"
set "search=bcd"
CALL set "test=%%var:%search%=%%"
if "%test%"=="%var%" (echo %search% is not in %var%) else echo %search% in %var% found
set "var=abcdefg"
set "search=bcd"
echo %var%|findstr /lic:"%search%" >nul && echo %search% found || echo %search% not found
FindStr
解決策は、NULL リダイレクトを使用すること>nul
です。
SET var=%1
SET searchVal=Tomcat
SET var|FINDSTR /b "var="|FINDSTR /i %searchVal% >nul
IF ERRORLEVEL 1 (echo It does't contain Tomcat) ELSE (echo It contains Tomcat)
次のように、名前を付けて保存しtest.bat
、検索するパラメーターを指定して実行します。 test Tomcat7
C:\>test Tomcat9
It contains Tomcat