以管理员身份自动运行批处理文件

Vin*_* KV 31 batch-file

如何从具有管理员权限的其他批处理文件运行批处理文件?

我尝试过RUNAS命令,但它需要管理员密码.

我正在搜索运行批处理文件的替代方法,方法是右键单击它并以管理员身份运行.我想从另一个批处理文件中自动化它.

fed*_*ich 21

在Windows 7上:

  1. 创建该批处理文件的快捷方式

  2. 右键单击该快捷方式文件并选择" 属性"

  3. 单击Advanced按钮以查找以管理员身份运行的复选框

查看下面的截图

截图

  • 答案不好.OP要求在另一个批处理文件**中以**作为管理员运行批处理文件**,这不起作用. (2认同)
  • 我可能应该指出我曾经在XP上试过这个,它没有用.我最近没有尝试过,所以我可能错了,或者当我这样做时,我可能做错了. (2认同)

小智 14

您可以使用PowerShell以管理员身份运行b.bat a.bat:

set mydir=%~dp0

Powershell -Command "& { Start-Process \"%mydir%b.bat\" -verb RunAs}"
Run Code Online (Sandbox Code Playgroud)

它将通过确认对话框提示用户.用户选择YES,然后b.bat将以管理员身份运行.


小智 13

将每行放在cmd或批处理文件中的所有主题中:

@echo off

if not "%1"=="am_admin" (powershell start -verb runas '%0' am_admin & exit /b)

"Put your command here"
Run Code Online (Sandbox Code Playgroud)

这对我来说可以.


use*_*353 11

使用

runas /savecred /profile /user:Administrator whateveryouwanttorun.cmd
Run Code Online (Sandbox Code Playgroud)

它将仅在第一次要求输入密码.除非更改密码等,否则不会再次要求输入密码.

  • @AnsgarWiechers - 用他自己的话说,"我正在寻找一种替代方法来运行批处理文件,方法是右键单击它并以管理员身份运行.我想从另一个批处理文件中自动化它. - 如果他能够通过右键单击并以管理员身份运行它,那么他已经知道管理员密码 - 这就像linux上的sudo.另一件事是没有管理员密码就无法使用. (2认同)