1

概念的にこれを行うDOSバッチファイルを作成する必要があります。

SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
SET TARGET=c:\Temp\directory name with spaces\
FOR %%C IN (A B C D ) DO (
   copy "Setups\%%C\Release\%%C%Setup.msi"  "%%TARGET%\%%C"
   echo Similar commands ...
)

たとえば、ここで

Setups \ A \ Release \ ASetup.msiは、スペース\ A \ ASetup.msiを含むc:\temp\ディレクトリ名にコピーされます。

私が抱えている問題は、コマンドプロセッサがこれを非常に直感に反して解析し、期待される(または有用な)結果を生成しないことです。これは単一のコマンドファイルで可能ですか?

(私は補助バッチファイルでそれを行うことができます-しかしそれはエレガントではないようです)

4

1 に答える 1

2

call copy "Setups\%%C\Release\%%CSetup.msi" "%TARGET%\%%CSetup.msi"

  1. あなたは迷子のパーセンテージのサインインをしました%%C%Setup.msi

  2. 次に、2 倍のパーセンテージを入力し%%TARGET%ます。必要なのは 1 つだけです。

  3. 宛先ファイル名の末尾に Setup.msi がありませんでした。

注: この例では厳密には必要ありませんが、習慣的に call も使用しました。

于 2012-08-21T01:07:13.027 に答える