У меня есть общий .bat файл, который читает файл status.xml и узнает значение поля состояния. Этот командный файл затем вызывается другими командами для определения значения состояния. вызывающие пакетные файлы отправляют имя файла в общий файл bat. Я не могу отправить статус из общего пакетного файла в вызывающие пакетные файлы. Кто-нибудь может помочь?
main batch file
-- will call the common bat file and send the file name and a variable as arguments
setlocal
call Common.bat c:\folderdir\files\status.xml val1
-- trying to print the status returned by the common bat file
echo [%val1%]
common batch file
@ECHO off
setlocal EnableDelayedExpansion
rem will loop through the file and read the value of the status tag
(for /F "delims=" %%a in (%1) do (
set "line=%%a"
set "newLine=!line:<Interface_status>=!"
set "newLine=!newLine:</Interface_status>=!"
if "!newLine!" neq "!line!" (
@echo Status is !newLine!
rem I want to send`enter code here` the value of newLine to the calling batch file
set %~2 = !newLine! <--this does not work
)
))