Co to jest Windowsowy odpowiednik uniksowego polecenia „whoami”?


72

Czy w systemie Windows istnieje odpowiednik uniksowego polecenia „whoami”? Jeśli tak, co to jest?


2
Tak, jest i to też whoami
DeepSpace101

użyj polecenia „sesja zapytań”, aby uzyskać listę aktualnie zalogowanych lub odłączonych usług terminalowych, użytkownicy
Martin

Odpowiedzi:


73

Od Windows 2000 whoamipolecenie jest częścią standardowego wiersza poleceń (dzięki pk za wyczyszczenie tego w komentarzach!).

Możesz to zrobić: Otwórz wiersz polecenia i wpisz „set”, a następnie naciśnij klawisz Enter. Pokazuje aktywne zmienne środowiskowe. Bieżąca zalogowana nazwa użytkownika jest przechowywana w zmiennej env USERNAME, a Twoja domena jest przechowywana w zmiennej USERDOMAIN.

Aby piggy-back od innych odpowiedzi, z linii cmd:

echo %USERDOMAIN%\%USERNAME%

dostarczy ci pełnego zalogowanego użytkownika w formacie domena \ nazwa użytkownika.

Z Powershell możesz zrobić to samo:

write-host $env:userdomain\$env:username

1
+1 za aspekt edukacyjny oraz za włączenie domeny i nazwy użytkownika
tomjedrz

@squillman Jak sprawić, by działało to podczas uruchamiania wiersza polecenia jako użytkownik Sytem? Ponieważ w takim przypadku nie ma zmiennej środowiskowej, takiej jak% USERDOMAIN% lub% USERNAME%
GianT971

@ GianT971 Czy masz na myśli LocalSystem? Nie ma sposobu na to konto, ponieważ nie jest ono powiązane z zalogowanym użytkownikiem. Zwykle to konto jest używane w przypadku usług, a gdy usługa działa jako system lokalny, przyjmuje kontekst bezpieczeństwa menedżera kontroli usług.
squillman

Dobrze. Tak, o to mi chodziło. Być może w przypadku najnowszych wersji programu PowerShell jest to możliwe, ponieważ podczas uruchamiania aplikacji .NET wywołującej środowisko.Username na koncie LocalSystem, wynikiem jest „System”. Ale jeszcze nie przyjrzałem się PowerShell
GianT971

@ GianT971 Możesz spawnować procesy cmd lub powershell i uruchamiać skrypty, ale nie otrzymasz interaktywnej powłoki.
squillman

16

Raportuje większość tych samych informacji, które mówią wszyscy, ale możesz też po prostu pisać

SET U

Zwróci wszystkie zmienne środowiskowe zaczynające się na U.

Nawiasem mówiąc, SET L może być przydatny do debugowania problemów z serwerem logowania.


1
Czasami widzisz wskazówki, które trzeba udostępnić, te dwie są świetne.
Tuby


5

Z linii poleceń? Powinno to zrobić „echo% nazwa użytkownika%”. Zalogowany użytkownik jest przechowywany w zmiennej środowiskowej „nazwa użytkownika”.

Z sesji graficznej ctrl-alt-del wyświetli ekran z wyświetlonym zalogowanym użytkownikiem.



3

Powyższe są natywne dla systemu operacyjnego i lepszych odpowiedzi, ale w duchu kompletności istnieje dosłownie whoami.exe w narzędziach obsługi 2000 i XP. Przy 32 kb byłoby łatwo wdrożyć zasady grupy, gdybyś miał serce ustawione na tym poleceniu.


1

W autoekinie lub w wierszu polecenia systemu DOS wpisz monit% USERDOMAIN% \% USERNAME% $ p $ g , a wyświetli się osoba zalogowana jako i zobaczysz typowy monit taki jak: DOMAIM \ nazwa użytkownika C:>

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.