如何在Domino服务器关闭的情况下自动运行一些Domino任务

12/3/2006来源:Lotus Notes人气:8017

环境

产品: Lotus Domino Server
平台: 跨平台
版本: Lotus Domino Server 5.x, 6.x

问题

有时候,用户需要在Domino服务器关闭的情况下,自动运行一些Domino服务器的任务。例如,运行压缩数据库的命令:compact -C。那么,如何实现呢?

解答

自动运行一些服务器的任务需要创建一个批处理文件,并结合Domino的程序文档来实现。这个批处理文件需要被放置在Domino的程序目录下(例如:lotus\domino)。如果它被放在了其它的目录,那么就需要在批处理文件中指定Domino的程序目录。这个批处理文件(batch.bat)的内容应该类似于以下两种情况:

1。如果这个批处理文件位于Domino的程序目录下,那么这个批处理文件应该包含以下的内容:

nserver.exe -c "q"
sleep 60
ncompact.exe -C names.nsf
sleep 60
nserver.exe

2。如果这个批处理文件不是位于Domino的程序目录下,那么这个批处理文件应该包含以下的内容:

c:\lotus\domino\nserver.exe -c "q"
sleep 60
c:\lotus\domino\ncompact.exe -C c:\d5\domino\data\names.nsf (注意:这个用粗体所表示的路径指的是names.nsf所在的数据目录,适用于数据目录没有位于程序目录下的情况。)
sleep 60
c:\lotus\domino\nserver.exe


下面是有关上面批处理文件内容的一些解释:
1。第1行是关闭Domino服务器。
2。第2行是延迟60秒后执行下一个动作, 此设置需要根据实际情况而定。如果Domino服务器没能在特定的任务运行之前完全退出,那么这个特定的任务就有可能执行得不正确,例如ncompact -C 的命令。
3。最后一行是启动Domino服务器。

注意:
1。为了能够让“sleep”命令工作,需要把下面的sleep.exe文件放在Domino的程序目录下。(该sleep.exe文件已经作为附件添加在此文档的最后了。)
2。运行这个批处理文件时,可以简单地点击此文件,或是从Domino的控制台上输入:load batch.bat 。
3。如果需要自动地运行这个批处理文件,那么还需要创建一个Domino的程序文档。这个程序文档应该被设置为:

然后,定义这个程序文档自动执行的时间。

附件下载: sleep.exe

,