ユーザー入力がxy.txtに存在するかどうかを確認するバッチファイルを作成しようとしていますが、それは簡単です
@echo off
set /p input=" "
findstr /c:"%word%" xy.txt > NUL
if ERRORLEVEL 1 goto notexist
if ERRORLEVEL 2 goto exist
:exist
echo user input does exist
pause > nul
exit
:notexist
echo user input does not exist
pause > nul\
しかし、ユーザー入力が「hello world」の場合、各単語を個別にチェックしたいと思います。
私はこれを試しましたが、良くありません...そして単語が存在しない場合は保存します
@setlocal enableextensions enabledelayedexpansion
@echo off
:start
set /p word=" "
for /F "tokens=* delims= " %%A in ("%word%") do set A=%%A & set B=%%B
if %A%=="" goto Anovalue
if not %A%=="" goto checkforA
:Anovalue
echo first word has no value
pause
if %B%=="" goto Bnovalue
if not %A%=="" goto checkforB
:Bnovalue
echo second word has no value
pause
goto start
:checkforA
findstr /c:"%A%" xy.txt > NUL
if ERRORLEVEL 1 goto notexistA
if ERRORLEVEL 2 goto existA
:checkforB
findstr /c:"%B%" xy.txt > NUL
if ERRORLEVEL 1 goto notexistB
if ERRORLEVEL 2 goto existB
:existA
echo first word does exist in xy.txt
pause
goto checkforB
:existB
echo second word does exist in xy.txt
pause
goto start
:notexistA
echo first word does not exist in xy.txt
pause
(echo %A%) >>xy.txt
goto checkforB
:notexistB
echo second word does not exist in xy.txt
pause
(echo %B%) >>xy.txt
goto start\
もっと簡単でスマートな方法でそれを行うことはできませんか?