在Windows 2012 Server计算机上,我想从包装批处理文件中调用批处理文件。被调用批处理文件的路径包含一个空格,它位于M:\Programs\Epic Games\4.12\Engine\Build\BatchFiles\RunUAT.bat
中。所以我的包装批处理文件如下所示:
@echo off
call "%1\%2\Engine\Build\BatchFiles\RunUAT.bat"
我从命令行调用这样的包装器:
Wrapper.bat "M:\Programs\Epic Games" 4.12
但这会导致以下错误:
'""M:\Programs\Epic' is not recognized as an internal or external command,
operable program or batch file.
我在包装器中使用和不使用call
尝试了它,但结果是一样的
我在这里做错了什么想法?
答案 0 :(得分:3)
请阅读Command Line arguments (Parameters)或call /?
:
如果启用了命令扩展......
%~1
- 展开%1
删除任何周围的引号("
)
@echo off
SETLOCAL EnableExtensions
call "%~1\%~2\Engine\Build\BatchFiles\RunUAT.bat"