2016-06-12 6 views
0

Windows 2012 Serverマシンでは、ラッパーバッチファイルからバッチファイルを呼び出したいとします。呼び出されたバッチファイルへのパスには、スペースが含まれています(M:\Programs\Epic Games\4.12\Engine\Build\BatchFiles\RunUAT.bat)。だから私のラッパーのバッチファイルは、次のようになります別のバッチファイルからパスの空白を含むWinバッチファイルを呼び出す

@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を付けて試しましたが、結果は同じです。
私がここで間違っていることは何ですか?

答えて

3

Command Line arguments (Parameters)またはcall /?をお読みください:

If Command Extensions are enabled …

%~1 - expands %1 removing any surrounding quotes (")

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

が正常に動作しますありがとう! – Matthias

関連する問題