gpt4 book ai didi

windows - 如何在 Windows 批处理文件中将 PATH 设置为另一个带空格的变量值

转载 作者:可可西里 更新时间:2023-11-01 13:30:00 25 4
gpt4 key购买 nike

我遇到了一个 Windows 批处理脚本问题,我一直在抨击这个问题(没有双关语意)。有问题的脚本如下所示:

if defined _OLD_VIRTUAL_PATH (
set PATH=%_OLD_VIRTUAL_PATH%
)

当我运行它并设置了 _OLD_VIRTUAL_PATH 时,我得到:

\Microsoft was unexpected at this time.

_OLD_VIRTUAL_PATH 是一个最初从 PATH 设置的变量,它包含空格 - 我很确定这就是问题所在。但是解决办法是什么?如果我将它括在引号中,它会成功运行,但我认为 PATH 变量的整个值不应该用引号引起来。

最佳答案

这里的问题不是空格,而是右括号。您可能正在运行 64 位系统,其中 32 位应用程序的 Program Files 目录是 Program Files (x86)。在批处理文件中带括号的 block 中,右括号结束该 block ,因此该行的其余部分会导致语法错误。

你有两种方法来解决这个问题:

1) 将完整的 set 参数放在引号中。这会导致右括号不被识别为 block 的结尾:

if defined _OLD_VIRTUAL_PATH (
set "PATH=%_OLD_VIRTUAL_PATH%"
)

2) 不要使用 block :

if defined _OLD_VIRTUAL_PATH set PATH=%_OLD_VIRTUAL_PATH%

关于windows - 如何在 Windows 批处理文件中将 PATH 设置为另一个带空格的变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2771285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com