我使用Windows XP并拥有以下两个批处理文件:
start_up.bat:
C:
cd "C:\programs\hsqldb\hsqldb-2.1.0\hsqldb\bin\"
start C:\programs\hsqldb\hsqldb-2.1.0\hsqldb\bin\runServer.bat
C:\programs\tomcat\apache-tomcat-6.0.26\bin\startup.bat
shut_down.bat:
cmd /c "C:\programs\tomcat\apache-tomcat-6.0.26\bin\shutdown.bat | ant -verbose -buildfile shutdown.xml hsqldb-stop"
我调用这两个文件的目录包含:
start_up.bat
shut_down.bat
shutdown.xml
正如您所看到的,我正在尝试启动HSQLDB + TOMCAT然后将其关闭。
问题是,HSQLDB关闭后,HSQLDB运行的窗口不会自动关闭(ant命令关闭HSQLDB)。我认为这是因为我通过“START”创建了这个窗口,但我不知道该窗口有多接近。
如果我尝试创建该窗口并为其命名,例如名称“db”,由:
start "db" C:\programs\hsqldb\hsqldb-2.1.0\hsqldb\bin\runServer.bat
然后我仍然不知道如何根据其名称关闭窗口。
更新
我找到了一种通过标题“关闭”窗口的方法:
taskkill /f /fi "WINDOWTITLE eq mytitle"
所以我将批处理文件更改为:
start_up.bat:
C:
cd "C:\programs\hsqldb\hsqldb-2.1.0\hsqldb\bin\"
start "hsqldb" C:\programs\hsqldb\hsqldb-2.1.0\hsqldb\bin\runServer.bat
C:\programs\tomcat\apache-tomcat-6.0.26\bin\startup.bat
shut_down.bat:
cmd /c "C:\programs\tomcat\apache-tomcat-6.0.26\bin\shutdown.bat | ant -verbose -buildfile shutdown.xml hsqldb-stop"
taskkill /f /fi "WINDOWTITLE eq hsqldb"
现在,在HSQLDB关闭后,“hsqldb”窗口关闭。
如果您找到更直接的解决方案,请随时告诉我。
答案 0 :(得分:0)
您可能想尝试使用“call”命令而不是“cmd”来调用shutdownbat(在shut_down.bat内)。