Come eseguire un'applicazione come "run as administrator" dal prompt dei comandi?

Ho un file batch chiamato test.bat. Sto chiamando le seguenti istruzioni nel file test.bat:

start /min powershell.exe %sysdrive%\testScripts\testscript1.ps1

Quando lo eseguo attraverso il prompt dei comandi, il mio testcript viene eseguito con successo. Voglio eseguirlo come amministratore (come se avessi creato un collegamento sul desktop ed eseguito come amministratore. Non dovrebbe richiedere alcun nome utente o password).

Ho provato ad aggiungere i parametri /elevate e /NOUAC nel suddetto test.bat, ma senza fortuna. Come posso risolvere questo problema?

So come farlo manualmente, ma voglio che questo venga eseguito dal prompt dei comandi.

(Da Marnix Klooster): ...senza usare strumenti aggiuntivi, come quelli suggeriti in una risposta alla domanda di Super User Come eseguire un programma dalla riga di comando con diritti elevati.

Prova questo:

runas.exe /savecred /user:administrator "%sysdrive%\testScripts\testscript1.ps1" 

Salva la password la prima volta e non la chiede più. Forse quando cambierai la password di amministratore ti verrà richiesto di nuovo.

Commentari (10)

Vedere questo articolo TechNet: Documentazione del comando Runas

Da un prompt dei comandi:

C:\> runas /user:\administrator cmd

Oppure, se si è connessi a un dominio:

C:\> runas /user:\ cmd
Commentari (2)

Sembra che psexec -h sia il modo per farlo:

 -h         If the target system is Windows Vista or higher, has the process
            run with the account's elevated token, if available.

Che... non sembra essere elencato nella documentazione online in Sysinternals - PsExec.

Ma funziona sulla mia macchina.

Commentari (4)