ネットワークドライブをスクリプト内のドライブ文字にマップするMSBuildスクリプトを作成しようとしていますが、残念ながらターゲットフォルダーへのパスには埋め込みスペースが含まれています。埋め込まれたスペースが原因でマッピングが失敗し、パスを囲む引用符をエスケープできるかどうかわかりません。二重引用符を試してみましたが、MSBuildはそれを気に入らない(それもWindowsもXPは気に入らない)。
<Exec Command="Net Use x: \\ofmapoly703\c$\program files\ar\iap /user:$(UserID) $(Password)"
WorkingDirectory="c:\"
ContinueOnError="false"
/>
もちろん、埋め込みスペースは「プログラムファイル」にあります。
つかいます - "
net
属性値内でCommand
に表示させる二重引用符をエンコードします。
<Exec Command="Net Use x: "\\ofmapoly703\c$\program files\ar\iap" /user:$(UserID) $(Password)"
WorkingDirectory="c:\"
ContinueOnError="false"
/>
コマンドには単一引用符を使用できます。
<Exec Command='Explorer.exe "$(DestinationDir)"' IgnoreExitCode="true" />
( ブロックなしのMSBuild execタスク )から