如何使用PowerShell在[elevated] cmd中运行命令?

3
我希望使用PowerShell在cmd中运行提升的命令,例如calc.exe。我已经尝试过从PowerShell执行以下命令:
Start-Process -Verb RunAs cmd calc.exe

它所做的只是打开提升权限的 cmd,但不运行 calc.exe (命令)。

我做错了什么?有人能帮我吗?

1个回答

6
Start-Process调用的可执行文件是cmd;您必须单独指定它的参数,使用-ArgumentList-Args)参数,并将其作为一个数组(用,分隔)。
Start-Process -Verb RunAs cmd -Args /k, calc.exe

注意:这里的参数不需要引号,但是以“-”为前缀的参数或带有空格的参数需要使用引号(例如:'/k', 'calc.exe')。
注意:
  • /k 是必需的,它可以在启动 calc.exe 后保持 cmd 控制台窗口打开状态(/c 会在启动后立即关闭控制台窗口,但在这种情况下,您可以直接将 calc.exe 传递给 Start-Process 来跳过 cmd)。

  • 通常,您需要使用 /c/k 中的一个来将要执行的命令传递给 cmd;否则,如 calc.exe 这样的参数将被简单地忽略。
    运行 cmd /? 获取更多信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接