Was ist das Windows-Äquivalent zum Unix-Befehl „whoami“?


72

Gibt es ein Windows-Äquivalent zum Unix-Befehl "whoami"? Wenn ja, was ist das?


2
Ja, es gibt und es ist auch whoami
DeepSpace101

Verwenden Sie den Befehl "query session", um eine Liste der derzeit angemeldeten oder getrennten Terminaldienste zu erhalten, Benutzer
Martin

Antworten:


73

Seit Windows 2000 ist der whoamiBefehl Teil der Standardbefehlszeile (danke an pk für das Aufräumen in Kommentaren!).

Sie können dies tun: Öffnen Sie eine Eingabeaufforderung und geben Sie "set" ein und drücken Sie die Eingabetaste. Hier werden aktive Umgebungsvariablen angezeigt. Der aktuell angemeldete Benutzername wird in der Variablen USERNAME env und Ihre Domain in der Variablen USERDOMAIN gespeichert.

Um die anderen Antworten aus einer cmd-Zeile herauszuholen:

echo %USERDOMAIN%\%USERNAME%

Sie erhalten den vollständigen angemeldeten Benutzer im Format Domäne \ Benutzername.

Mit Powershell können Sie dasselbe tun:

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

1
+1 für den Bildungsaspekt und für die
Angabe

@squillman Wie kann ich diese Funktion aktivieren, wenn ich als Systembenutzer eine Eingabeaufforderung ausführe? In diesem Fall gibt es keine Umgebungsvariable wie% USERDOMAIN% oder% USERNAME%
GianT971

@ GianT971 Meinst du LocalSystem? Es gibt keine Möglichkeit für dieses Konto, da es keinem angemeldeten Benutzer zugeordnet ist. In der Regel wird dieses Konto für Dienste verwendet. Wenn ein Dienst als LocalSystem ausgeführt wird, übernimmt er den Sicherheitskontext des Dienststeuerungs-Managers.
Squillman

Okay. Ja das ist, was ich meinte. Möglicherweise ist es mit den neuesten Versionen von PowerShell möglich, dass beim Ausführen einer .NET-App, die Environment.Username unter dem Konto LocalSystem aufruft, das Ergebnis "System" lautet. Aber ich habe mir PowerShell
GianT971 am

@ GianT971 Sie können Cmd- oder Powershell-Prozesse erzeugen und Skripts ausführen, aber Sie erhalten keine interaktive Shell.
Squillman

16

Hier werden die meisten der Informationen angezeigt, die alle anderen sagen. Sie können jedoch auch einfach nur tippen

SET U

Es werden alle Umgebungsvariablen zurückgegeben, die mit U beginnen.

Abgesehen davon kann SET L nützlich sein, um Probleme mit dem Anmeldeserver zu beheben.


1
Manchmal sieht man nur Tipps, die geteilt werden müssen, diese beiden sind großartig.
Wannen


5

Von der Kommandozeile? "echo% username%" sollte es tun. Der angemeldete Benutzer wird in der Umgebungsvariablen "Benutzername" gespeichert.

In einer grafischen Sitzung zeigt Strg-Alt-Entf einen Bildschirm mit dem angemeldeten Benutzer an.



3

Die oben genannten Informationen beziehen sich auf das Betriebssystem und bieten bessere Antworten. Der Vollständigkeit halber gibt es jedoch buchstäblich eine whoami.exe in den 2000- und XP-Supporttools. Bei 32 KB wäre es einfach, die Gruppenrichtlinien zu implementieren, wenn Sie sich für diesen Befehl entschieden hätten.


1

Geben Sie in der Autoexec oder an einer DOS-Eingabeaufforderung prompt% USERDOMAIN% \% USERNAME% $ p $ g ein . Sie werden sehen, als wen Sie angemeldet sind, und die typische Eingabeaufforderung sieht folgendermaßen aus: DOMAIM \ Benutzername C:>

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.