批次 If 語句中的問題

批次 If 語句中的問題

當我運行批次腳本時,出現以下錯誤:

這是fai=沒有這樣的元素:無法定位元素:{“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以及編輯器將其替換為您的原始名稱。

相關內容