我的目标是在x64机器上将%PF%variables设置为C:\ ProgramFiles(x86)\ MSBuild \并将其设置为x86机器上的C:\ ProgramFiles \ MSBuild \。 我可以轻易实现这样的方式
IF DEFINED ProgramFiles(x86) SET PF=%ProgramFiles(x86)%\MSBuild\ IF NOT DEFINED ProgramFiles(x86) SET PF=%ProgramFiles%\MSBuild\
但是我想在一个IF ELSE语句中这样做。
那个
IF DEFINED ProgramFiles(x86) (SET PF=%ProgramFiles(x86)%\MSBuild\) ELSE (SET PF=%ProgramFiles%\MSBuild\)
与意外的“\ MSBuild \”错误失败。
那个
IF DEFINED ProgramFiles(x86) (SET PF="%ProgramFiles(x86)%\MSBuild\") ELSE (SET "PF=%ProgramFiles%\MSBuild\")
运行没有错误。
但结果值不是我所需要的( “%ProgramFiles(x86)%\ MSBuild”) ,而不是在x64机器上的“C:\ ProgramFiles(x86)\ MSBuild \” 。
那么这是possibe?
使用这个语法:
SET "PF=%ProgramFiles(x86)%\MSBuild\"
请注意报价的位置。