Czy w systemie Windows 7 jest wiersz wiersza polecenia, który może uruchomić cmd jako administrator? [duplikować]

39

To pytanie ma już odpowiedź tutaj:

W systemie Linux możemy użyć

sudo bash

do uruchomienia powłoki jako superużytkownik.

W systemie Windows 7 możemy użyć

Menu Start -> (w polu wyszukiwania wpisz) cmd -> Kliknij prawym przyciskiem myszy wynik wyszukiwania i wybierz Uruchom jako administrator

aby uruchomić wiersz polecenia jako administrator. Jest tam również linia wiersza polecenia, które jest jak na Linux sudolub sutak aby uruchomić powłokę jako administrator?

nopole
źródło
11
Możesz także wyszukać cmd (tak jak już to robisz) i nacisnąć „ctrl + shift + enter”, aby uruchomić wybrany program jako administrator.
Joshua

Odpowiedzi:

34

runasKomenda jest najbliższa rzecz do czego szukasz:

runas /user:username cmd.exe

Format to runasnazwa użytkownika, którą chcesz uruchomić, inne opcje, a następnie program, który chcesz uruchomić.

Jeśli jesteś w domenie, możesz użyć:

runas /user:DOMAIN\USERNAME cmd.exe

Można to uruchomić z Runpola ( Win+ R) lub z okna poleceń.

Pamiętaj jednak, że to nie jest dokładnie tak sudo- nie możesz go użyć do podniesienia siebie, po prostu uruchom coś jako inny użytkownik. Jeśli masz już uprawnienia administracyjne, runy na twoje konto dadzą ci taki sam dostęp jak zwykłe polecenie (chyba że uruchomisz inne konto administratora, co da uprawnienia administratora nowej powłoce).

Jared Harley
źródło
2
Ponadto, w przeciwieństwie do sudo, runasnigdy nie będzie buforować hasła przez dłuższy czas. Więc jeśli planujesz ustawić w kolejce kilka szybkich poleceń, tak jak możesz, z kolejnymi uruchomieniami sudo. Więc po prostu otwórz okno konsoli i uruchom tam swoje polecenia.
Joshua
więc najkrótsza forma to „runas / user: DOMAIN \ Administrator cmd.exe” wow ... to dość długie i trudne do zapamiętania ... i mogę stworzyć alias, ale co, jeśli jestem na czyimś komputerze i pomagam ? czy dobrym pomysłem będzie stworzenie przez MS specjalnego polecenia o nazwie runasadmin?
nopole
5
Joshua: Chyba że użyjesz /savecred.
grawity
+1, a dla lokalnego administratora runas /user:administrator cmd.exenietrudno zapamiętać po kilkunastu typach. Wszystko to samo polecenie, runaspo którym następuje /user:przełącznik, a następnie użytkownik, który chcemy go uruchomić, a następnie program, który chcemy uruchomić cmd.exe(w naszym przypadku wiersz polecenia). Jest to tak blisko jednej linii, jaką można uzyskać za uruchomienie podniesionych monitów poleceń. Ponadto, jeśli uruchomisz -> uruchom czasami jest pole wyboru, aby uruchomić program z podwyższonym poziomem uprawnień, nie włożyłem żadnego wysiłku w ustalenie, co się pojawia, ale jest to opcja.
MDMoore313
2
Wygląda na to, że domyślnie administrator nie ma hasła. I że konto jest faktycznie wyłączone. Konto administratora musi być najpierw włączone, podane hasło, a następnie staje się faktycznym użytkownikiem, do którego można się zalogować i uruchomić na nim.
CMCDragonkai
11

Spróbuj utworzyć skrót do cmd.exe. Kliknij prawym przyciskiem myszy> Właściwości. Kliknij przycisk Zaawansowane. I zaznacz pole „Uruchom jako administrator” i kliknij OK.

Jeśli chcesz, przypisz mu klawisz skrótu.

Możesz także przypisać domyślną lokalizację monitu CMD, aby rozpocząć w. Np.% CD%

Metyczne
źródło
8

Inną alternatywą jest kliknięcie Starti wpisanie cmd , a następnie Ctrl+ Shift+Enter

Źródło: Microsoft Technet

Hanxue
źródło
3

Użyj SuRun .

Działa również w systemie Windows 8. Uruchamia aplikację w trybie „admin” bez monitu, ale masz większą kontrolę nad tym, jakie aplikacje są uruchamiane (możesz to zobaczyć w aplecie panelu sterowania SuRun). Działa również świetnie w pliku wsadowym ...

Kippax
źródło
tylko uwaga dla Windows 8 (i 8.1): Nie mogłem uruchomić wiersza polecenia jako administrator, ponieważ surun zastępuje - domyślnie ustawienia - wbudowaną funkcję runas w menu kontekstowych.
Wolf,
1

Utwórz plik wsadowy, taki jak sudo.bat, wpisz następujące polecenia, a następnie zapisz w ścieżce:

@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

Jednak aby go użyć, na przykład, sudo cmd net start fmsskrypt nie będzie działał, jeśli w wierszu poleceń znajduje się znak zapytania.

Kosmos
źródło
2
Powoduje to monitowanie użytkownika o okno dialogowe UAC, a następnie uruchomienie żądanego polecenia w osobnym oknie.
TOOGAM
1

Jeśli potrzebujesz rozwiązania wiersza polecenia: pobierz hstart ze strony http://www.ntwind.com/software/hstart.html i rozpakuj hstart.exe lub hstart64.exe gdzieś na swojej ścieżce. Można uruchomić wiersz polecenia z podwyższonym poziomem uprawnień za pomocą hstart /runas cmdlub hstart64 /runas cmd.

Ale najszybszym sposobem (jak zaznaczono w komentarzu do pytania) jest nadal naciskanie systemu Windows, pisanie cmdi naciśnięcie Ctrl+ Shift+ Enter.

Łukasz
źródło
1

Byłem sfrustrowany istniejącymi rozwiązaniami, więc napisałem mały skrypt Node.js, który powinien być bardziej znany użytkownikom * nix.

Podnosi obecnego użytkownika bez monitowania o hasło (tylko UAC ), przekierowuje stdin i stdout i działa w tym samym oknie konsoli.

https://github.com/tehsenaus/windosu

teh_senaus
źródło
Działa to świetnie - po prostu powiedz sudo <command>i naciśnij Alt + Y w oknie dialogowym UAC.
Brian Burns
0

Do mojej powłoki Hamilton C dołączam oryginalne sui sudopolecenia, aby uruchomić polecenie jako inny użytkownik lub z podwyższonym poziomem uprawnień (z poleceniem UAC) lub z obu, tj. Podniesione jako inny użytkownik. W przeciwieństwie do innych alternatyw, moje i wiem, jak przekazywać bieżące katalogi, zmienne środowiskowe i długie wiersze poleceń. To jest produkt komercyjny, ale jest darmowa wersja . Pełne ujawnienie: jestem autorem. Ale chętnie odpowiadam na pytania.runassusudo

Nicole Hamilton
źródło