用批处理文件创建事件
这是我想要实现的。我们有这个电子邮件存档数据库,我们每周都会进行优化。目前我们正在手动登录运行命令并监视状态。优化可能需要3-12小时之间的任何地方,这使得我们每隔几小时登录一次,并检查它是否已完成等。 我想要做的是创建一个批处理文件并安排一个任务来运行批处理文件。现在,当批处理文件启动时,i事件生成一个事件ID(然后我可以捕获这个evend id并通过我们的监视系统生成一封电子邮件),同样当优化完成时生成应用程序日志中的事件ID。在这里,我正在考虑做什么: -用批处理文件创建事件
@echo off
cd C:\Program Files\Quest Software\ArchiveManager
C:\WINDOWS\system32\cmd.exe /K "Archive Full Text Index Service" –optimize
IF errorlevel 1 Goto Stoppd
exit
:Stoppd
eventcreate /l application /t information /so 9999 /id 1 /d "the optimization has started "
:end
我对批处理文件和脚本非常不好。有人可以建议如何产生事件。谢谢
首先,cmd /k
操作应返回的0
一个errorlevel
如果它被正确启动,所以你要eventcreate
电话应该在您的例子有它的exit
命令之前发生,你:Stoppd
标签后不。
其次,如果要触发归档操作作为一个衍生的进程运行,你应该把start
在cmd
行的前面:
start C:\WINDOWS\system32\cmd.exe /K "Archive Full Text Index Service" –optimize
这将允许被踢你的进程关闭,然后当前控制台可以继续并触发您的'archive has started'
事件。
三,以获取事件被创建之后的存档操作完成后,你有几个选择:
-
你可以Concat的两个命令使用起来
&
:start C:\WINDOWS\system32\cmd.exe /K "Archive Full Text Index Service" –optimize & eventcreate ...
-
您可以将您的存档通话及其随后的eventcreate通话放入批处理文件中,然后在您的
cmd /k
通话中拨打电话。start C:\WINDOWS\system32\cmd.exe /K myArchiveAndEventBatch.bat
嗯,是的,你说什么:) – MPelletier 2010-02-24 03:14:41
你是如何开始备份的? – rerun 2010-02-24 02:59:58