program elevation from command line

  • This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.
Nov 8, 2008
Hi, after a small run in with a virus I have decided to enable UAC. The key feature holding me back was the ability to run a program elevated from the command line (unix like "sudo" capability).

John Robbins has written a simple "elevate" program (for use with Take Command) that would be extremely useful as an internal function - part of start maybe.

I have wrapped up elevate with a simple batch file that starts Take Command commands in a new Take Command shell, and external commands directly, this would also be useful in take command.

Start a command as administrator.
usage: sudo [/wait|/hide|/pause] <command>
- /wait - wait for the elevated program to finish
- /hide - hide the elevated command line program
- /pause - pause before ending the elevated command line program


REM Start an elevated command prompt
iff %# == 0 then
elevate.exe %wait "%ComSpec"
return 0

set command=%1

REM Check for a valid program
which %@quote[%command] |& egrep -i "is an unknown" >& nul
iff %? == 0 then
EchoErr %command is an unknwon command.
return 1

REM Run an external (not Take Command) program elevated
which %@quote[%command] |& egrep -i "is an external" >& nul
iff %? == 0 then
elevate.exe %wait %$
return 0

REM Run a Take Command program elevated
elevate.exe %wait "%ComSpec" /c %hidden %$ %@if[ defined pause ,`&` pause]

return 0</command>