batch-file – 将STDOUT转换为变量

前端之家收集整理的这篇文章主要介绍了batch-file – 将STDOUT转换为变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在批处理文件中使用 sendemail.在发送电子邮件结束时,它会回复一个包含简单或失败的消息.例如
Jan 10 00:46:54 villa sendemail[456]: Email was sent successfully!

是否可以将此消息捕获到变量中以进行处理?

谢谢

是的,您需要通过for循环执行sendmail:
for /f "tokens=*" %%a in ('[sendmail command line]') do (
    set VAR=%%a
)

运行后,VAR将被设置为sendmail输出的最后一行.然后,您可以在该行上进行处理

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
    )
)

猜你在找的Windows相关文章