在命令提示符下检测程序何时关闭

时间:2014-05-21 01:47:51

标签: batch-file

我有一个代码,允许我在启动程序时更改系统日期。我希望我的代码在关闭程序时更改日期。

set before=%date%
echo 01/06/2012 | date
start C:\Skittles\Rainbows3.1\angels.cmd
timeout 5
echo %before% | date

所以不要立即更改日期(我的代码的第4-5行),我希望它在程序关闭时更改

希望这很清楚。

1 个答案:

答案 0 :(得分:2)

好的,所以我做了一些测试,结果发现start命令在应用于批处理脚本时的行为不是我想象的那样。

事实证明

start anyscript.cmd
当脚本终止时,

将新命令窗口打开(在命令提示符下)。类似地,

start /wait anyscript.cmd

在显式关闭新命令窗口之前不会返回。

解决方法很简单:使用

start /wait cmd /c anyscript.cmd

这将在脚本执行时退出。

您可能还想考虑是否真的需要新的命令窗口。替代方案包括

cmd /c anyscript.cmd

call anyscript.cmd

两者都将在现有命令窗口中运行批处理脚本。