在批处理脚本中使用绝对路径时遇到问题。
脚本代码:
powershell -c start -verb runas cmd '/c start cd "%~dp0%SomeScript.bat"'
%~dp0%:脚本的绝对路径
我想以管理员身份启动终端,因此我可以使用另一个可供使用的脚本。
代码在某些时候可以工作,但是它会提示打开终端,即使 Windows 提示中的绝对路径是正确的,然后我收到错误:
Cannot find the path specified.
我搜索了整个互联网,却找不到解决方案。
答案1
cd
从批次中删除:
powershell -c start -verb runas cmd '/c start "%~dp0%SomeScript.bat"'
在下面的例子中,绝对路径是C:\Users\User\Desktop
,您的命令将被翻译为:
C:\Windows\system32\cmd.exe /K cd C:\Users\User\Desktop\SomeScript.bat
这样,除非你删除该命令,否则它将不起作用cd
,它将如下所示:
C:\Windows\system32\cmd.exe /K C:\Users\User\Desktop\SomeScript.bat