我需要在 .cmd 脚本中访问 Windows 环境变量,它看起来像这样,遵循以下文档微软的支持:
if "%MY_ENV_VAR%" == "" (
echo You must set your MY_ENV_VAR environment variable.
goto end
)
set DO_STUFF="%MY_ENV_VAR%\some_folder\doStuff.exe"
但是,脚本无法运行,并且我收到以下消息:
\此时预计会有 Windows
我做错了什么吗?该如何解决?
我不知道这有多重要,但环境变量包含以下路径:C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0
答案1
我认为您可能将批处理语言与更高级的脚本语言混合在一起。您显示的链接是批处理文件的链接。据我所知,您不能像编写 Java 代码那样编写批处理文件(使用括号等)
以下是一些伪代码,可能会让您了解如何应用您链接的示例:
if "%MY_ENV_VAR%"=="" goto ERROR
set DO_STUFF=%MY_ENV_VAR%\some_folder\doStuff.exe
...
goto DONE
:ERROR
echo You must set your MY_ENV_VAR environment variable.
:DONE
我已经有一段时间没有编写过批处理文件了,但我认为基本上就是这样。
答案2
嗯...对我来说这似乎还可以。
但如果第一个 IF 是问题所在,您可以尝试以下操作:
if not defined MY_ENV_VAR (
echo You must set your MY_ENV_VAR environment variable.
goto end
)