【发布时间】:2014-05-09 20:12:28
【问题描述】:
我无法理解如何自动关闭从另一个批处理文件启动的批处理文件。
我的第一个批处理文件如下所示:
@echo off
:logs
start C:\Users\Kenturrac\Desktop\copy.bat
timeout 2
goto logs
如您所见,我启动了另一个名为“copy.bat”的批处理文件,如下所示:
::set arma path
@set ARMAPATH=C:\Users\Administrator.WIN-B8I65OIU3DJ\Desktop\server\dayz_epoch_1
::set log path
@set LOGPATH=%ARMAPATH%\_LOGS
@set MOVEORCOPY=copy
:: Berechne Zeitstempel
@set DAY=%DATE:~0,2%
@set MONTH=%DATE:~3,2%
@set YEAR=%DATE:~6,4%
@set DATE=%YEAR%_%MONTH%_%DAY%
@set HH=%TIME:~0,2%
@IF "%TIME:~0,1%"==" " (
set HH=0%TIME:~1,1%
)
@set MIN=%TIME:~3,2%
@set SEC=%TIME:~6,2%
@set TIME=%HH%%MIN%
@IF NOT EXIST "%LOGPATH%\%DATE%_%TIME%\" (
@set TEMPPATH=%DATE%_-_%TIME%
) ELSE (
@set TEMPPATH=%DATE%_-_%TIME%_%SEC%
)
@set TARGETPATH=%LOGPATH%\%TEMPPATH%\
@echo %TARGETPATH%
Exit /b
问题在于它没有关闭为“copy.bat”启动的附加 cmd 窗口。 如果我使用“call”而不是“start”,它会弄乱“temppath”变量。
【问题讨论】:
标签: windows batch-file cmd