为了账号安全,请及时绑定邮箱和手机立即绑定

批处理脚本:如何检查管理员权限

批处理脚本:如何检查管理员权限

天涯尽头无女友 2019-10-14 10:32:28
如何检查当前的批处理脚本是否具有管理员权限?我知道如何用runas来调用它自己,但是不知道如何检查管理员权限。我看到的唯一解决方案是粗暴的黑客作业或使用外部程序。好吧,实际上,我不关心它是否是一项骇客的工作,只要它可以在Windows XP和更高版本上运行即可。
查看完整描述

3 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

安德斯(Anders)解决方案对我有用,但我不确定如何将其反转以获取相反的结果(当您不是管理员时)。


这是我的解决方案。它有IF和ELSE两种情况,还有一些确保人们实际阅读的ascii艺术。:)


最低版本

Rushyo在此发布了此解决方案:如何检测CMD是否以管理员身份运行/具有提升的特权?


NET SESSION >nul 2>&1

IF %ERRORLEVEL% EQU 0 (

    ECHO Administrator PRIVILEGES Detected! 

) ELSE (

    ECHO NOT AN ADMIN!

)

添加错误消息,暂停和退出的版本

@rem ----[ This code block detects if the script is being running with admin PRIVILEGES If it isn't it pauses and then quits]-------

echo OFF

NET SESSION >nul 2>&1

IF %ERRORLEVEL% EQU 0 (

    ECHO Administrator PRIVILEGES Detected! 

) ELSE (

   echo ######## ########  ########   #######  ########  

   echo ##       ##     ## ##     ## ##     ## ##     ## 

   echo ##       ##     ## ##     ## ##     ## ##     ## 

   echo ######   ########  ########  ##     ## ########  

   echo ##       ##   ##   ##   ##   ##     ## ##   ##   

   echo ##       ##    ##  ##    ##  ##     ## ##    ##  

   echo ######## ##     ## ##     ##  #######  ##     ## 

   echo.

   echo.

   echo ####### ERROR: ADMINISTRATOR PRIVILEGES REQUIRED #########

   echo This script must be run as administrator to work properly!  

   echo If you're seeing this after clicking on a start menu icon, then right click on the shortcut and select "Run As Administrator".

   echo ##########################################################

   echo.

   PAUSE

   EXIT /B 1

)

@echo ON

适用于WinXP-> Win8(包括32/64位版本)。


编辑:8/28/2012更新为支持Windows8。@BenHooper在下面的回答中指出了这一点。请支持他的回答。


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 1150 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信