方法一:
有的電腦是非管理員登錄俊犯,運行程序時妇多,需要提示是否運行運行。解決方法如下:
@?echo off
%1?%2
ver|find?"5.">nul&&goto?:Admin
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :Admin","","runas",1)(window.close)&goto?:eof
:Admin
//在你的bat開頭加上上面的命令即可
//下面是你需要執(zhí)行的命令
set?path=%~dp0
echo install?mysql?service...
echo?%path%
cd?%path%\bin\
mysqld.exe?--remove mysql
mysqld.exe?--install mysql
echo start mysql?Serviceo
"%SystemRoot%"\system32\net start mysql
方法二:
bat腳本獲取管理員權限
@echo?off
%1?mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd?/d?"%~dp0"
//寫在bat文件的頂端就可以實現(xiàn)燕侠。
方法三:
在bat腳本文件第一行加上下面命令:
%1?mshta vbscript:CreateObject(“Shell.Application”).ShellExecute(“cmd.exe”,"/c %~s0 ::","",“runas”,1)(window.close)&&exit
方法四:
自動以管理員身份運行批處理(bat)文件
????在日常運維工作中者祖,為方便對windows用戶進行系統(tǒng)安裝或配置等,使用Windows自帶的批處理(bat文件)是一種最為簡單快速的方法绢彤。
????但是七问,批處理腳本不會默認已管理員身份運行,一般情況下杖虾,我會將腳本命名為"XXXXXX(請右鍵點擊烂瘫,用管理員身份運行!).bat"媒熊,但總有些用戶會忽略這條提示奇适,直接運行,此時由于權限不足芦鳍,導致腳本運行失敗嚷往。我們可以使用一種變通的方法,讓bat啟動時柠衅,首先調(diào)用vbs腳本皮仁,通過vbs腳本,以管理員身份調(diào)用該bat的 runas 部分
????我們的腳本可以寫在runas 下菲宴,這樣就點擊該bat腳本贷祈,就可以已管理員身份運行了
示例代碼如下
@ECHO?OFF
setlocal?EnableDelayedExpansion
color?3e
title?添加服務配置
PUSHD?%~DP0?&?cd?/d?"%~dp0"
%1?%2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto?:eof
:runas
::填寫自己的腳本
echo?執(zhí)行完畢,任意鍵退出
pause?>nul
exit
方法五:以管理員權限執(zhí)行bat腳本
????只需要在你編寫的.bat文件的開頭加上以下腳本,然后雙擊.bat文件即是以管理員權限執(zhí)行
@echo?off&color?17
if?exist?"%SystemRoot%\SysWOW64"?path?%path%;%windir%\SysNative;%SystemRoot%\SysWOW64;%~dp0
bcdedit?>nul
if?'%errorlevel%'?NEQ?'0'?(goto?UACPrompt)?else?(goto?UACAdmin)
:UACPrompt
%1?start?""?mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&exit
exit?/B
:UACAdmin
cd?/d?"%~dp0"
echo?當前運行路徑是:%CD%
echo?已獲取管理員權限
方法六: 如何讓BAT和CMD批處理以管理員身份運行
有些批處理需要很高的權限執(zhí)行才能達到我們所需要的效果喝峦,
將以下代碼放入批處理最頂部就可以實現(xiàn)以管理員身份運行了势誊。
@echo?off
>nul?2>&1?"%SYSTEMROOT%\system32\cacls.exe"?"%SYSTEMROOT%\system32\config\system"
if?'%errorlevel%'?NEQ?'0'?(
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"?)
方法七: 命令行CMD批處理自動以管理員身份運行的正確方法
修正了路徑有空格時的問題
在批處理開頭加上:
適用于無參數(shù)
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c "^&chr(34)^&"%~0"^&chr(34)^&" ::","%cd%","runas",1)(window.close)&&exi
適用于一參數(shù)
%2 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c "^&chr(34)^&"%~0"^&chr(34)^&" "^&chr(34)^&"%~1"^&chr(34)^&" ::","%cd%","runas",1)(window.close)&&exit
更多參數(shù)的以此類推
運行批處理時多加一個參數(shù)::,這句就不會執(zhí)行
為了兼容8.3短路徑谣蠢,可把%~0等換成%~s0等
理論上是沒問題粟耻,但啟動路徑有時不可靠查近,之后可能還要pushd或cd /d
方法八:bat文件以管理員權限運行的幾種方式
1、創(chuàng)建bat快捷方式挤忙,然后右鍵快捷方式-->properties-->advanced-->Run as administrator霜威。
2、下載bat轉(zhuǎn)成exe工具册烈,將bat轉(zhuǎn)成exe,然后右鍵exe-->properties-->Compatibility-->Run as administrator戈泼。
3、以管理員權限運行cmd赏僧,然后dos框中運行相應的bat矮冬。