【发布时间】:2021-04-17 02:44:41
【问题描述】:
我正在尝试以提升的权限从 cmd 运行 powershell 脚本,但我需要将参数传递给 powershell 脚本。这是我正在使用的批处理文件的代码:
echo off
cls
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -Verb runas -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%~dp0\MigrationTool.ps1 -ConfigFile ConfigFile.xml""'}"
当我使用上面的代码时,脚本什么都不做。
如果我在没有 -ConfigFile 参数的情况下运行脚本,则脚本会运行,然后它会提示我输入配置文件。虽然我得到提示,然后我只是输入配置文件,但脚本仍然不起作用。
我在互联网上做了一些挖掘,但找不到任何解决方案。
谢谢。
【问题讨论】:
-
为什么要运行cmd运行PowerShell运行PowerShell?可能有一个不太复杂的解决方案来解决您的问题。您可以查看
runas工具。 -
这个问题可能是由双重
""引起的。 cmd 和 powershell 转义不同。
标签: powershell batch-file