Odpowiedzi:
Najprostszym sposobem na to jest uruchomienie Powershell z tokenami administracyjnymi. Aby to zrobić, kliknij prawym przyciskiem myszy PowerShell (lub skrót do niego) i kliknij „Uruchom jako administrator”. Alternatywnie możesz użyć elevate.cmd .
Według Microsofta Powershell v2 polega na kliknięciu skrótu prawym przyciskiem myszy i wybraniu opcji Uruchom jako administrator .
Aby podnieść w oknie PowerShell:
start-process powershell –verb runAs
Który z pliku wsadowego cmd.exe, skrótu lub wiersza Uruchom wyglądałby (powtarzalnie) w następujący sposób:
powershell "start-process powershell -verb runas"
Spowoduje to otwarcie nowej instancji PowerShell:
function Run-Elevated ($scriptblock)
{
# TODO: make -NoExit a parameter
# TODO: just open PS (no -Command parameter) if $scriptblock -eq ''
$sh = new-object -com 'Shell.Application'
$sh.ShellExecute('powershell', "-NoExit -Command $scriptblock", '', 'runas')
}
Oczekuję, że występują z tym problemy - w szczególności nie dostaniesz z powrotem danych wyjściowych bloku skryptowego w skrypcie wywołującym. Z drugiej strony będzie tam w nowej instancji PS, więc możesz się tam włamać.
Jeśli chcesz zawsze uruchamiać PowerShell z uprawnieniami administratora, możesz kliknąć prawym przyciskiem myszy skrót PowerShell, a następnie kliknąć przycisk „Zaawansowane ...” na karcie „Skrót”, a następnie wybrać „Uruchom jako administrator”.
Łatwa droga...
Oto jak skonfigurować proste polecenie uzyskiwania uprawnień administratora w dowolnym momencie, z dowolnej sesji PowerShell!
Krok 1: Otwórz swój profil PowerShell. (Zezwól notatnikowi na utworzenie pliku, jeśli go brakuje).
notepad "$profile"
Krok 2: Wklej następujący kod w dowolnym miejscu tego pliku.
function GoAdmin { start-process powershell –verb runAs }
Krok 3: Uruchom ponownie PowerShell. Polecenie jest teraz stale dostępne.
Krok 4: Za każdym razem, gdy chcesz przejść do administratora, po prostu wpisz GoAdmin
(i nie martw się o wpisanie poprawnej wielkości liter; funkcje PS nie uwzględniają wielkości liter). Możesz oczywiście nazwać tę funkcję czymś innym Elevate
lub czymkolwiek, ale nie chciałem ryzykować konfliktów, dlatego nazwałem ją frazą składającą się z dwóch słów, bez myślników, aby mieć pewność, że nigdy nie będzie kolidować z własnymi funkcjami programu PowerShell.
Zauważ, że okno administratora otwiera się w osobnej powłoce. Możesz zamknąć oryginalną powłokę lub pozostawić ją otwartą. Jeśli praca administratora wykonuje coś „dużego”, na przykład dodawanie / modyfikowanie zmiennych środowiskowych, wówczas powłoka użytkownika (nie będąca administratorem) może po prostu wpisać, refreshenv
aby ponownie załadować swoje środowisko i uzyskać zmiany.
Zasadniczo, po prostu GoAdmin
rób rzeczy administracyjne, takie jak instalowanie pakietów ( oczywiście z https://chocolatey.org/ !), A następnie zamknij okno administratora i uruchom refreshenv
w swojej powłoce użytkownika! Voila