从另一个批处理文件中调用Path中的Whitespace的Win Batch文件

时间:2016-06-12 12:01:24

标签: windows batch-file cmd

在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尝试了它,但结果是一样的 我在这里做错了什么想法?

1 个答案:

答案 0 :(得分:3)

请阅读Command Line arguments (Parameters)call /?

  

如果启用了命令扩展......

     

%~1 - 展开%1删除任何周围的引号("

@echo off
SETLOCAL EnableExtensions
call "%~1\%~2\Engine\Build\BatchFiles\RunUAT.bat"