我有一个小脚本,可以在 Windows 上执行 Bazaar 的构建和安装过程。我正在管理的存储库。我尝试在 Windows shell (cmd.exe) 中以提升的管理权限运行该脚本 - 就像我右键单击它并选择“以管理员身份运行”一样,但不使用任何需要使用图形界面的方法。
最佳答案
您所要做的就是使用 runas
命令以管理员身份运行您的程序(带有警告)。
runas /user:Administrator "cmdName parameters"
就我而言,这是
runas /user:Administrator "cmd.exe /C %CD%\installer.cmd %CD%"
请注意,您必须使用引号,否则 runas 命令会将 switch 选项吞噬到 cmd。
另请注意,管理 shell (cmd.exe) 在 C:\Windows\System32 文件夹中启动。这不是我想要的,但是很容易将当前路径传递给我的安装程序,并使用绝对路径引用它。
警告:启用管理员帐户
以这种方式使用 runas 需要启用管理帐户,这在 Windows 7 或 Vista 上不是默认设置。然而,here这是一个关于如何以三种不同方式启用它的精彩教程:
我自己通过打开管理工具、本地安全策略来启用它,然后导航到本地策略\安全选项并更改将帐户:管理帐户状态策略设置为已启用,这不是链接中显示的三种方式之一。
实现此目的的更简单方法:
C:> net user Administrator /active:yes
关于cmd - 如何以管理员身份从 Windows 命令行运行命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5944180/