我将尝试解释我的问题:
当我启动master.bat时,当前路径为“D:\Master\” 然后,当执行slave_01.bat时,它尝试从“D:\Master\”而不是“D:\Master\Slave\"启动setup_01.exe。
- 我有一个主批处理文件,名为master.bat
- 我有几个批处理文件,名为slave_0x.bat,通过CALL命令从master.bat调用。
- 每个slave_0x.bat文件从相对目录启动setup_0x.exe文件。
- 这两个文件位于master.bat目录的子目录中。
- master.bat文件位于D:\Master\
- slave_01.bat位于D:\Master\Slave_01\
- setup_01.exe也位于D:\Master\Slave_01\
当我启动master.bat时,当前路径为“D:\Master\” 然后,当执行slave_01.bat时,它尝试从“D:\Master\”而不是“D:\Master\Slave\"启动setup_01.exe。
REM Master.bat
@ECHO OFF
TITLE Installing Applications
SET mypath=%~dp0
ECHO %mypath:~0,-1%
ECHO.
ECHO 1) Installing App 1
ECHO.
call D:\Master\Slave_01\slave_01.bat"
ECHO.
ECHO 2) Installing App 2
ECHO.
CALL D:\Master\Slave_02\slave_02.bat"
PAUSE
slave_0x 文件:
REM slave_01.bat
TITLE App 1
ECHO.
ECHO %mypath:~0,-1%
ECHO.
ECHO Installing App 1
ECHO Please wait...
START /wait setup_01.exe /SILENT /SP- /NORESTART
有没有一种方法可以在从master.bat文件启动的slave_0x.bat文件中使用当前目录,而不是从master.bat文件的当前目录来启动正确目录下的setup_0x.exe文件?
谢谢!