windows cmd获取administrator权限


原文链接: windows cmd获取administrator权限

方法一:鼠标右键

这个方法比较比较普通,点开开始找到cmd,右击鼠标“以管理员身份运行(A)”这样调用就是管理员的权限;

##方法二:快捷模式

在点开win+R后,选择“以管理员身份运行”,然后确定;可以这还是会调出UAC的提示界面,选择“是”即可;

方法三:纯键盘模式

点开开始,在开始的输入框中输入cmd,这个时候出现cmd的快捷方式,可以采用方法一的方法启用管理员调用,但这里我们不用鼠标,直接按住CTRL+SHIFT+ENTER三个键就可以直接调用管理员权限的cmd了;

方法四:命令模式

我们可以直接进入非管理员模式的cmd,然后输入:

runas /user:administrator cmd

但是这里你得知道administrator的密码。而这里不用administrator这个用户也可以,可以用同在一个管理组中的其他用户来启动cmd也是可以的,权限同样是管理员,比如administrators中还有一个用户叫:abc 那么可以用命令:runas /user:abc cmd。这个时候只要输入abc用户的登录密码即可。

runas /noprofile /user:Administrator cmd

runas 允许用户用其它权限运行指定的工具和程序
/noprofile 指定不应该加载用户的配置文件。
/user:UserAccountName 指定在其下运行程序的用户帐户的名称

获取管理员权限

@echo off
cd /d "%~dp0" && ( if exist "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" ) && fsutil dirty query %systemdrive% 1>nul 2>nul || (  cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~dp0"" && ""%~dpnx0""", "", "runas", 1 >> "%temp%\getadmin.vbs" && "%temp%\getadmin.vbs" 1>nul 2>nul && exit /B )
echo ***                   Windows Status                     ***
rem @echo off 下面的代码都不打印出来
@echo off
REM 检查管理员权限
REM >nul不打印错误信息
REM >nul 2不打印正确信息
REM >nul 2>&1 错误信息也归为正确信息,且不打印
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

rem 权限检测当前errorlevel为 0 的时候是管理员权限
rem NEQ 不等于
if '%errorlevel%' NEQ '0' (
    goto UACPrompt
) else (
    goto  gotAdmin
)

:UACPrompt
  rem 生成获取权限的vbs
  echo Set UAC= CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
  echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
  "%temp%\getadmin.vbs"
  rem 重新启动bat
  exit /B

:gotAdmin
  rem 移除getadmin.vbs
  if exist "%temp\getadmin.vbs%" ( del "%temp\getadmin.vbs%" )
  rem 已获取到管理员权限,可以在下面添加管理员身份运行的内容
  echo You have administrator privileges
`