Jako programista często muszę otwierać wiersz polecenia do różnych celów. Na przykład używam iisreset
do ponownego uruchomienia lokalnego serwera WWW.
Zazwyczaj otwieram okno poleceń na jeden z dwóch sposobów:
- Naciśnij Win, wpisz „cmd” i naciśnijEnter
- W Eksploratorze przytrzymaj Shiftfolder i kliknij prawym przyciskiem myszy folder i wybierz „Otwórz okno poleceń tutaj”
Kiedy jednak otwieram okno poleceń na jeden z tych sposobów, nie mam pełnych uprawnień administratora, do których mam prawo.
Aby uruchomić aplikacje tylko dla administratora, muszę otworzyć wiersz polecenia w ten stosunkowo pracochłonny sposób:
- Naciśnij Win, wpisz „cmd”
- Poczekaj, aż menu się zapełni
- Podnieś rękę z klawiatury i umieść ją na myszy
- Kliknij prawym przyciskiem myszy pozycję menu „cmd.exe”
- Wybierz „Uruchom jako administrator”
Jest to niedopuszczalne z kilku powodów:
- Okno zawsze otwiera się w C: \ windows \ system32, a nie w moim
Users
katalogu (jak w zatwierdzonej technice 1) lub w folderze, w którym chcę być (jak w zatwierdzonej technice 2). Dlatego często muszę zmieniać katalogi, aby dostać się tam, gdzie chcę iść. - Ten proces jest kilka milisekund wolniejszy niż jedna z moich preferowanych metod. Wykonywany kilka razy dziennie, przez resztę mojej kariery, stanowi około dziesięciu dni straconego czasu spędzonego na klikaniu i czekaniu oraz zmianie katalogu.
- Jako programista wykonywanie bezsensownego robota wywołuje u mnie ogromny ból emocjonalny.
- Jako programista podnoszenie ręki jest męczącym zadaniem, które powoduje wielki ból fizyczny.
Dlatego szukam jednego rozwiązania, które pozwoli zatwierdzonym technikom 1 i 2 otwierać monity poleceń administratora.
Wiele programów pozwala trwale zmienić domyślny poziom uprawnień z menu Właściwości. Wiersz polecenia nie jest jednym z tych programów.
Jak sprawić, aby okno poleceń było domyślnie uruchamiane jako administrator (nawet przy użyciu opcji menu kontekstowego „Otwórz okno poleceń tutaj”)?
Odpowiedzi:
Aby odpowiedzieć na pierwszą część pytania, po naciśnięciu klawisza Windows i wpisaniu „CMD” możesz nacisnąć Ctrl+ Shift+, Enteraby otworzyć jako administrator.
Aby odpowiedzieć na drugą część pytania, wklej następujące elementy do notatnika i zapisz je z rozszerzeniem „.reg”:
Następnie uruchom plik. Scali zmiany w rejestrze i doda opcję do menu kontekstowych. (Nie wymaga klawisza Shift.)
źródło
Karta Zgodność jest całkowicie wyłączona dla wszystkich plików wykonywalnych systemu Windows:
Aby ustawić uprawnienia administratora dla plików wykonywalnych systemu Windows, musisz utworzyć skrót i użyć karty Skrót →
Advanced
(wiersz polecenia w menu Start jest już skrótem):Jest to normalne i ma sens, ponieważ otwierając wiersz polecenia administratora, prawdopodobnie wykonujesz pewne działania systemowe, do których potrzebujesz uprawnień administratora zamiast działań użytkownika, do których i tak masz już uprawnienia.
Możesz ustawić domyślny katalog globalnie, dodając / edytując
Autorun
wpis rejestru (nie musi to być nawet rozwijany ciąg znaków, aby używać zmiennych środowiskowych):Teraz, za każdym razem, gdy otworzysz wiersz polecenia za pomocą dowolnej metody , automatycznie domyślnie (cóż, technicznie zmień katalog ) na katalog profilu użytkownika.
Co więcej, możesz dodać inne polecenia, które będą automatycznie uruchamiane za każdym razem, gdy otwierasz wiersz polecenia za pomocą
&
operatora (npcd /d %userprofile% & cls & dir
.). Ponadto można ustawić tę samą wartość w tym samym kluczu wHKLM
gałęzi, aby ustawić ją dla wszystkich użytkowników.Pamiętaj, że nadal będziesz musiał zaakceptować monit UAC. Niestety nie ma (obecnie?) Sposobu na utworzenie „białej listy” zaufanych programów UAC, aby wiersz polecenia mógł być uruchamiany jako administrator bez konieczności przyjmowania monitu. To pozostawia Ci (a) kilka opcji.
useraccountcontrolsettings.exe
)W pierwszym przypadku całkowicie unikasz UAC, podczas gdy w dwóch ostatnich podajesz swoje poświadczenia tylko raz podczas tworzenia skrótu.
źródło
cd /d "%userprofile%"
autoruns nie tylko podczas otwierania nowego okna konsoli, ale także za każdym razem, gdy wywoływany jest nowy wątek wykonania. Może to powodować problemy, na przykład zfor /f
pętlami. Spróbuj tego po poleceniu cmd:cd "\Program Files"
a następniefor /f "delims=" %I in ('cmd /c cd') do @echo %I
. Zobaczysz, żefor /f
pętla myśli, że jej bieżącym katalogiem roboczym jest $ home, a nie Program Files. Bezpieczniej jest zmodyfikowaćcmd
skrót i ustawić cel jako"%comspec%" /k cd /d "%userprofile%"
.%comspec% /c cd /d "%USERPROFILE%" & %comspec%
Rozwiązaniem, którego używam, jest otwarcie wiersza polecenia, otwierając menu Start, wpisując „cmd” i naciskając Ctrl+ Shift+ Enter. Spowoduje to uruchomienie wybranego programu jako administratora.
źródło
Aby automatycznie uruchamiać się
CMD
jako administrator przy każdym kliknięciu (bez konieczności klikania prawym przyciskiem myszy lub tworzenia dodatkowych skrótów), można to łatwo rozwiązać:W Edytorze rejestru przejdź do:
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
Layers
folderu , musisz go utworzyć i nazwać:Kliknij
AppCompatFlags
folder prawym przyciskiem myszy wybierz New→KeyKliknij prawym przyciskiem myszy
Layers
, wybierz New→ String Value. Ustaw nazwę nowej wartości ciągu na pełną ścieżkę doCMD.EXE
wiersza polecenia (C:\Windows\System32\cmd.exe
) (tj. )Kliknij dwukrotnie nową wartość ciągu, aby ją zmodyfikować, i ustaw „Dane wartości” na
RUNASADMIN
.Miałem tę samą irytację i to działało dla mnie.
źródło
Jeśli chcesz, aby CMD.exe był zawsze uruchamiany jako administrator, po prostu dodaj poniżej kod reg do rejestru:
źródło
Było kilka narzędzi, których użyłem, które były innymi obejściami (oprócz tego, o czym wspomniał Jesse).
Kiedy po raz pierwszy pojawiła się Vista, Microsoft wyszedł z „ podniesionym ” powerToy'em, który był dość przydatny i wykonał zadanie, a mimo to uważam (nie testowałem) działa na Windows 7. Upuść go w swoim środowisku ścieżki i możesz uruchomić „Elevate iisreset” z normalnego wiersza polecenia (lub nawet „Elevate cmd” od start / run lub utworzyć skrót)
źródło
Najprostszym sposobem na ominięcie wszystkich problemów związanych z UAC itp. Jest skonfigurowanie pozycji Harmonogramu zadań, aby uruchomić cmd.exe przy użyciu najwyższych uprawnień. Nie twórz dla niego zdarzenia wyzwalającego i upewnij się, że pole wyboru Zezwalaj na uruchamianie zadania na żądanie jest zaznaczone na karcie Ustawienia. Również na karcie Ustawienia upewnij się, że w menu rozwijanym „Jeśli zadanie jest już uruchomione, obowiązuje następująca reguła” ustawiono opcję Nie uruchamiaj nowej instancji.
Następnie utwórz skrót do tego na pulpicie i uruchom go stamtąd lub za pomocą skrótu klawiszowego lub przypnij skrót do paska zadań.
Zrobiłem to na moim systemie Windows 7 i działa idealnie.
źródło
Po prostu skopiuj i wklej cmd.exe i zmień jego nazwę na „cmda.exe” w folderze \ system32 \ (337 KB to nawet nic wielkiego ...). Opcja „Uruchom jako administrator” we właściwościach cmda.exe nie będzie już wyszarzona i możesz ustawić, aby zawsze działała jako administrator. Otrzymasz teraz dwa wiersze poleceń: pierwszy jest regularny, drugi ma uprawnienia (a) dmin. W Winpasku wyszukiwania można równie łatwo wpisać „cmda”, jak w przypadku „cmd”!
W przypadku menu kontekstowego cmd z uprawnieniami administratora upewnij się, że masz już plik cmda.exe, dodaj go do nowego pliku .reg i uruchom go
Zobaczysz dwie takie same linie w menu kontekstowym (shift); jeden wiersz polecenia bez podniesionego poziomu uprawnień i drugi z dodanym „(Administratorem)”.
Otóż to...
źródło
Utwórz skrót do cmd.exe, kliknij prawym przyciskiem myszy i wybierz właściwości, na karcie Skrót wybierz opcję Zaawansowane, zaznacz opcję Uruchom jako administrator.
źródło
Myślę, że najłatwiejszym sposobem, aby zawsze uruchamiać cmd jako administrator, jest utworzenie pliku .reg z kodem poniżej:
Wklej to w notatniku lub coś i zapisz jako plik .reg. Uwaga: To powoduje, że wiersz polecenia jest uruchamiany jako administrator dla wszystkich użytkowników. Aby zawsze uruchamiać się jako administrator tylko dla użytkownika, po prostu zmień HKEY_LOCAL_MACHINE na HKEY_CURRENT_USER
źródło
Wszystko dzięki Jesse'emu Brohinsky'emu
Bardziej ulepszona wersja. Obejmuje to również katalog w tle, który umożliwia również otwieranie cmd z wnętrza folderu. Również ze względu na to możesz otworzyć CommandRomt jako nieadministracyjny.
Możesz także wyłączyć AdminApprovalMode. W ten sposób nie musisz uruchamiać się jako administrator, gdy jesteś administratorem. http://helpdeskgeek.com/windows-7/turn-off-admin-approval-mode-in-windows-7/
źródło
Jedynym innym sposobem, niż wspomniany przez Dracsa, jest całkowite wyłączenie UAC
źródło
Poniższe działa dla mnie
otrzymasz ten sam monit uac potwierdzający, że administrator runas znalazł go jakiś czas temu @ stackexchange
źródło