如何使用命令行以管理员权限运行 cmd

如何使用命令行以管理员权限运行 cmd

有没有办法运行/启动命令作为行政人员通过命令行批处理文件在 Windows 8 中编程?

我想创建一个具有管理权限的批处理文件,而无需向用户提供任何提示。

答案1

runas /profile /user:administrator “Driver:\folder\program”

例如,管理员帐户为“AAA”,您要运行C:\programs下的BBB.exe,则请按照下列步骤操作:

  1. 按 Win 键和 R
  2. 在打开的框中输入“CMD”,点击“确定”
  3. 输入:runas /profile /user:AAA “C:\programs\BBB.exe” 并按“Enter”
  4. 输入管理员AAA的密码
  5. 按“Enter”

希望它有效。

答案2

你可以使用runas.exe /savecred /user:administrator cmd或参考关联

答案3

REM  --> Check for permissions  
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"  

REM --> If error flag set, we do not have admin.  
if '%errorlevel%' NEQ '0' (  
    echo Requesting administrative privileges...  
    goto UACPrompt  
) else ( goto gotAdmin )  

:UACPrompt  
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"  
    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
    "%temp%\getadmin.vbs"
    exit /B  

:gotAdmin  
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )   
    pushd "%CD%"  
    CD /D "%~dp0"  

答案4

您可以下载已创建的便携式和干净的(在中生成的Windows XP)快捷方式文件集:https://sourceforge.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/ToolAdaptors/lnk/

甚至可以生成自己的:https://sourceforge.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/ToolAdaptors/vbs/

使用示例

cmd_admin.lnk /C ...

每个 lnk 文件只是一个链接cmd.exe,因此您可以在这里传递所有的cmd.exe命令行选项。

优点

  • 您不需要像该runas方法那样的管理员帐户名的本地化版本。

缺点

  • 您只能启动提升的cmd.exe进程。要启动任何其他进程,您必须从脚本运行它cmd.exe,或者创建另一个带有提升标志的独立快捷方式Run as Administrator
  • 在 Windows XP 中从快捷方式文件 () 运行.lnk(但在 Windows 7 中不行)会将截断的命令行减少到约 260 个字符。
  • 从快捷方式文件运行 ( .lnk) 首先从快捷方式加载控制台窗口参数(字体、窗口大小、缓冲区大小等),然后从注册表 (HKCU\Console) 加载。如果尝试更改并保存参数,则它将仅保存到快捷方式中,从而导致快捷方式文件覆盖。

相关内容