web-dev-qa-db-ja.com

Windowsバッチ。スペースが含まれている場合は、PATH環境変数に追加します

コンソールセッションのパスにいくつかのバイナリを追加したいのですが、そのようにしています

if not defined WIXTOOLKIT_IN_PATH (
    set WIXTOOLKIT_IN_PATH=1
    set MY_PATH=%~dp0..\tools\wix
    SET PATH=%MY_PATH%;%PATH%
)

しかし、そのため、PATHにスペースが含まれ、\Skype\Phone\ was unexpected at this time.コマンドがエコーされたメッセージset PATHが表示されます。

                                SET PATH=;C:\Python34\;C:\Python34\Scripts;C:\ProgramData\
Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sy
stem32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Pr
ogram Files (x86)\Skype\Phone\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Pr
ogram Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files (x86)\Mic
rosoft SDKs\TypeScript\1.0\;C:\Program Files (x86)\CMake\bin

これは些細な状況だと確信していますが、解決策は見つかりませんでした。どうすれば修正できますか?

5

PATHにスペースが含まれていて、メッセージが表示されます...現時点では予期していませんでした

設定する引数を引用する必要があります。

交換:

SET PATH=%MY_PATH%;%PATH%

と:

SET "PATH=%MY_PATH%;%PATH%"

参考文献

  • Windows CMDコマンドラインのA-Zインデックス -Windowsコマンドラインに関連するすべてのものの優れたリファレンス。
  • set --CMD環境変数を表示、設定、または削除します。 SETで行われた変更は、現在のCMDセッションの間のみ保持されます。
6
DavidPostill