如何从命令提示符“以管理员身份运行”应用程序?

我有一个名为 test.bat的批处理文件。我在 test.bat文件中调用以下说明:

start /min powershell.exe %sysdrive%\testScripts\testscript1.ps1

当我通过命令提示符运行这个命令时,我的 testscript 正在成功地运行。我想以管理员身份运行它(就像我创建了一个桌面快捷方式并以管理员身份运行它一样)。它不应该提示输入任何用户名或密码)。

我已经尝试在上面的 test.bat中添加 /elevate/NOUAC参数,但是没有找到。我该如何解决这个问题?

我知道如何手动执行,但是我希望在命令提示符下执行。

(通过 马尼克斯 · 克鲁斯特) : ... 不使用任何额外的工具,就像在 一个超级用户问题的答案 < em > 如何从命令行运行程序,提高权限 中建议的那样。)

857471 次浏览

请参阅 TechNet文章: Runas 命令文档

在命令提示符下:

C:\> runas /user:<localmachinename>\administrator cmd

或者,如果你连接到一个域:

C:\> runas /user:<DomainName>\<AdministratorAccountName> cmd

试试这个:

runas.exe /savecred /user:administrator "%sysdrive%\testScripts\testscript1.ps1"

它第一次保存密码,并且永远不会再问。也许当您更改管理员密码时,会再次提示您。

看起来 psexec -h是这样做的:

 -h         If the target system is Windows Vista or higher, has the process
run with the account's elevated token, if available.

Sysinterals-PsExec 的在线文档里似乎没有这个。

但是它在我的机器上工作。