バッチ If ステートメントの問題

バッチ If ステートメントの問題

バッチ スクリプトを実行すると、以下のエラーが発生します。

これは失敗です = そのような要素はありません: 要素が見つかりません: {"method":"class name"," selector":"heading"} name","selector":"heading"}"=="Retry_required" は現時点では予期されていませんでした。

このスクリプトは昨日まで正常に動作していました。誰か助けてくれませんか?

脚本:

@echo OFF
setlocal enabledelayedexpansion
E:
CD E:\Selenium_SAIL\A20
SET /p fai=<test.txt
echo this is fai= %fai%
if "%fai%"=="Retry_required" (
echo in_if of test.bat
E:
CD E:\Selenium_SAIL\A20
call run123.bat
)

答え1

これを試して:

@echo OFF
setlocal enabledelayedexpansion
E:
CD E:\Selenium_SAIL\A20
SET /p fai=<test.txt
echo this is fai= %fai%
if "!fai!"=="Retry_required" (
echo in_if of test.bat
E:
CD E:\Selenium_SAIL\A20
call run123.bat
)

これは でのみ機能するようです。つまり、行内の変数 の代わりにをdelayedexpansion使用する必要があることも意味します。つまり、次のようになります。!%IF

if "!fai!"=="Retry_required" (

これがうまくいったかどうかお知らせください。また、ステートメント/Iに追加して大文字と小文字を区別IFしないようにすることもできます。私は同じものを使用して非常に基本的な方法でこれを機能させました。エディターが元の名前に置き換えた他のものechoを変更することを忘れないでくださいtest.txt

関連情報