【发布时间】:2019-03-18 09:34:50
【问题描述】:
当我在 powershell 控制台上使用以下命令时,它可以正常工作,并且我看到管理命令提示符打开并且脚本 sudo.bat 正确执行。
sudo.bat 包含一行,cd c:\temp\
Start-Process cmd \"/k C:\Users\Varun\Documents\sudo.bat cd /d %cd%\" -Verb RunAs
但下面一个不起作用,即当路径有空间时,管理命令提示符打开但它不运行脚本文件。
Start-Process cmd \"/k C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat cd /d %cd%\" -Verb RunAs
我尝试了以下方法,但没有成功:
Start-Process cmd \"/k \"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat\" cd /d %cd%\" -Verb RunAs
和:
Start-Process cmd \"/k 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat' cd /d %cd%\" -Verb RunAs
【问题讨论】:
-
把当前目录改成当前目录背后的思路是什么?
-
假设我在路径 c:\temp 并且它不是管理员。我想要一个包含上述行的脚本,因此我将运行该脚本(环境变量),它将在同一路径打开一个 Visual Studio Admin 命令提示符。我已经能够在没有 VS 命令提示符的情况下实现上述目标。
标签: windows powershell batch-file cmd path