Как выполнить команду с повышенными правами в сеансе PowerShell/cmd.exe?

Как выполнить команду с повышенными правами в сеансе PowerShell/cmd.exe?

В Linux можно стать пользователем suroot (администратором) для выполнения нескольких команд или sudo ...выполнить одну команду как root.

Есть ли что-то подобное в Windows, для PowerShell или cmd.exe, что позволяет мне запускать команду с повышенными правами доступа (например, создавать символическую ссылку), не открывая новое окно?

решение1

Sudo для cmd

@echo Set objShell = CreateObject("Shell.Application") > %temp%\sudo.tmp.vbs
@echo args = Right("%*", (Len("%*") - Len("%1"))) >> %temp%\sudo.tmp.vbs
@echo objShell.ShellExecute "%1", args, "", "runas" >> %temp%\sudo.tmp.vbs
@cscript %temp%\sudo.tmp.vbs

Это не мой код, просто передаю его дальше. Сохраните его как sudo.cmd и вставьте его в system32 или куда-нибудь в вашем PATH, и вы можете делать что-то вроде:

sudo test.bat

И test.bat будет запущен с повышенными правами.

решение2

В PowerShell есть командлет Get-Credential, вы даже можете присвоить его переменной и использовать в своих командах PowerShell позже.

Видеть этосвязьЧтобы получить больше информации...

Связанный контент