2

我第一次使用blat,它似乎工作正常,但是它为我打算发送的每封电子邮件发送两封电子邮件。脚本摘录如下:

::If we have a problem we email from here
CALL :checkForFailures

:checkForFailures
IF EXIST %ERROR_FILE% CALL :email & EXIT /B 1
::pause
GOTO :eof

:email
IF %TOLOG%==Y (
BLAT -f noreply@mydomain.com -to sapatos@mydomain.com -server myserver -subject "subject text" -body "Body text" -attacht 
::%PROBLEM_LIST% >> %LOGFILE%
) 

GOTO :eof

我试过在有和没有输出到日志文件的情况下运行它。在 cmd 提示符下运行良好,但只是此脚本中的问题。

谢谢您的帮助

4

2 回答 2

2

也许你应该在你调用后停止你的批处理文件:checkForFailures

::If we have a problem we email from here 
CALL :checkForFailures 
goto :eof

:checkForFailures
...

否则,您调用它一次,然后直接call. 在这种情况下,它再次运行:checkForFailures子程序并发送第二封邮件。

于 2010-01-08T06:58:43.007 回答
0

整个事情是如何被触发的?它是一个文件修改/创建标志吗?有时,由于操作系统处理修改/创建触发器的方式,这些类型的触发器可能会被重复计算。

于 2010-01-08T16:09:46.390 回答