Llame a un script por lotes en otro script por lotes y realice una operación en los valores devueltos por el primer script

Tengo un script por lotes "first.bat" que devuelve una lista de valores y un código de salida. Mi tarea es llamar a este script en otro script "second.bat" y realizar las operaciones en los valores devueltos por el "first.bat" solo si la llamada del primer script no ha devuelto un código de error.

He llamado a first.bat y he almacenado su salida en un archivo de texto. Después de eso, verifico el código de resultado y realizo la operación leyendo el archivo de texto si el código de resultado es un código de éxito. Y después de la operación borro el archivo de texto.

A continuación se muestra el fragmento de código de second.bat

@ECHO OFF


call first.bat >t

if /i %errorlevel%==100 (

 echo Performing operation

 for /F "tokens=1" %%a in (t) do echo %%a

 for /F "tokens=2" %%a in (t) do echo %%a

 del t

) else (
  echo Error occurred
)

Quiero saber si se puede hacer lo mismo de una manera elegante al no escribir la salida de first.bat al archivo de texto.

Respuestas a la pregunta(1)

Su respuesta a la pregunta