2016-09-14 46 views
0

我正在使用第三方exe从我的批处理脚本中发送电子邮件。我一直在不同的机器上测试我的脚本,并且在其中一台机器上发送电子邮件命令而不能继续。如果需要的时间过长,请跳过命令

我想在这里添加一个支票,如果它需要太长时间给我发电子邮件,那么我想终止命令并在脚本中继续。

该脚本将外部客户机也可以使用,我不希望他们永远与消息粘在CMD说:“更新:”

请指教。

回答

1

在二次加工开始你的命令,并杀死在超时后(我用ping -t,因为“卡”):

@echo off 
start "MyStuckingCommand" ping -t www.google.de 
timeout 10 
taskkill /f /fi "WindowTitle eq MyStuckingCommand" 
+0

您能否解释一下ping ping谷歌的目的?另外我怎么能抑制第一行的输出,以便用户运行脚本不会看到它?并在最后一行“WindowTitle eq MyStuckingCommand”这是干什么的? – irish

+0

好吧,它通过在一行'start \ b“命令中添加所有内容'&timeout \ t 10&taskkill' – irish

+0

如果您愿意,您还可以ping'yahoo.com' ...不,严重:我只好使用任何不会结束的命令,而'ping/t'是我首先想到的。 * ping什么*无关紧要。 – Stephan

1

考虑Windows作业对象。它们允许指定超时(和其他限制)。

+0

感谢,而不是在批的专家,所以寻求一些帮助这里。 – irish