【问题标题】:Windows removes quotes from target in shortcutWindows 从快捷方式中的目标中删除引号
【发布时间】:2017-03-17 05:25:51
【问题描述】:

我的快捷方式目标是:%APP_HOME%\abc.bat

问题是%APP_HOME% 有空格,当我保存快捷方式时,窗口会删除双引号并说它找不到路径。现在对我的要求是环境变量并以管理员权限运行目标。

编辑:APP_HOMEC:\myFolder\my app folder\current

由于my app folder 中的空格而中断。

对于那些想知道的人,到目前为止,我已经尝试过",使用%20,使用^ 来转义空格。

【问题讨论】:

  • 用 %20 代替空格怎么样?
  • @SagarV 这是我希望能工作的第一件事,遗憾的是它只输出文本 %20 lol,不将其识别为空格。
  • C:\myFolder\"我的应用文件夹"\current
  • @Anil_M 不,也不起作用。打破``.
  • 对我来说很好,没有任何引号。 Windows 7。您确定资源管理器可以看到有问题的环境变量吗?尝试注销并重新登录。最好仔细检查它是否确实设置正确,例如,在命令行上说 cd %app_home%

标签: windows cmd shortcut


【解决方案1】:

所以我从来没有找到关于如何在 Windows 快捷方式中使用包含空格的环境变量的答案,我真的希望有人能找到答案。目前,我的解决方法是使用以管理员身份运行的 windows cmd.exe 快捷方式,目标如下:

C:\WINDOWS\system32\cmd.exe /k cd %HOMEDRIVE%%HOMEPATH% && "%APP_HOME%\abc.bat" -installdir "%APP_HOME%"

解决方案:在我的例子中,我试图创建一个快捷方式abc.bat,然后我将目标修改为"%APP_HOME%\abc.bat" -installdir "%APP_HOME%"

但这失败了,因为 windows 会删除 " 并因此找不到目标。解决方法太简单了,我没想到。

Right Click on Desktop -> New -> Shortcut -> Paste the Target that you want in there

Windows 仍会删除",但至少它会正确展开。

至于为什么?我完全不知道,但我希望将来有人能阐明这一点。

解决方案的问题 所以这不是一个实际的解决方案,因为我刚刚意识到,当您转到Advanced 并尝试以管理员身份运行时,这会中断。但是,如果您以普通用户权限运行它,它将正确扩展。可悲的是回到上面提到的原始创可贴,创建一个以管理员身份运行并执行 bat 文件的 cmd.exe 快捷方式。

【讨论】:

  • 我认为这是因为您在“用户范围”而不是“系统范围”中定义环境变量。一旦您以“管理员”身份运行,管理员环境变量就不会知道用户变量!
猜你喜欢
  • 2021-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多