batch-file - command output to variable batch
Obtener STDOUT en una variable (2)
normalmente, solo usa el ciclo for para capturar la salida. vea aquí notas 4. (y busque en internet para más información)
Estoy usando sendemail en un archivo por lotes. Al final de enviar un correo electrónico responde con un mensaje de succes o error. Por ejemplo
Jan 10 00:46:54 villa sendemail[456]: Email was sent successfully!
¿Es posible capturar este mensaje en una variable para procesar?
Gracias
Sí, necesita ejecutar sendmail a través del ciclo for:
for /f "tokens=*" %%a in (''[sendmail command line]'') do (
set VAR=%%a
)
Después de esto, VAR se configurará en la última línea que envíe sendmail. A continuación, puede hacer el procesamiento en esa línea
for /f "tokens=5,* delims= " %%a in (%VAR%) do (
if "%%b"=="Email was sent successfully!" (
echo SUCCESS
exit /b 0
) else (
echo FAILURE
exit /b 1
)
)