题 什么是Windows等效的Unix“whoami”命令?


是否有Windows等效的Unix“whoami”命令?如果是这样,它是什么?


69
2018-05-19 17:02




是的,而且是的 也  whoami - DeepSpace101


答案:


自从Windows 2000以来 whoami 命令已经 标准命令行的一部分 (感谢pk在评论中清除它!)。

您可以这样做:打开命令提示符并键入“set”然后按Enter键。这显示了活动环境变量。当前登录的用户名存储在USERNAME env变量中,您的域存储在USERDOMAIN变量中。

要从cmd行中捎带其他答案:

echo %USERDOMAIN%\%USERNAME%

将以域\用户名格式为您提供完整的登录用户。

你可以用Powershell做同样的事情:

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

68
2018-05-19 17:06



+1表示教育方面,包括域名和用户名 - tomjedrz
@squillman当以Sytem用户身份运行命令提示符时,如何使这项工作成功?因此,在这种情况下,没有环境变量,例如%USERDOMAIN%或%USERNAME% - GianT971
@ GianT971你的意思是LocalSystem?该帐户没有办法,因为它与登录用户无关。通常,此帐户用于服务,当服务作为LocalSystem运行时,它将采用服务控制管理器的安全上下文。 - squillman
好。是的,这就是我的意思。也许使用最新版本的PowerShell,就像在LocalSystem帐户下运行调用Environment.Username的.NET应用程序一样,结果是“System”。但我还没有好好看看PowerShell - GianT971
@ GianT971您可以生成cmd或powershell进程并运行脚本,但是您不会获得交互式shell。 - squillman


这会报告大多数其他人都在说的相同信息,但您也可以输入

SET U.

它将返回以U开头的任何环境变量。

另外,SET L可以方便地调试logonserver问题。


15
2018-05-19 18:35



有时你会看到必须分享的提示,这两个很棒。 - Tubs


从命令行? “echo%username%”应该这样做。登录用户存储在环境变量“username”中。

在图形会话中,ctrl-alt-del将为您显示一个显示登录用户的屏幕。


5
2018-05-19 17:06





这取决于您的特定操作系统,但whoami命令可作为其中的一部分 Windows 2000资源工具包 和 Windows XP SP2支持工具


5
2018-05-19 17:06



+1在Vista +中默认也可用 - Oskar Duveborn
啊哈,我以为我最近在家里的笔记本电脑上使用过whoami,我想这很有效,因为它是远景。在这里工作我在xp - Kip


ECHO%USERNAME%


4
2018-05-19 17:06





以上是OS的本机和更好的答案,但在完整性的精神,2000和XP支持工具中确实有一个whoami.exe。如果您对该命令有所设定,那么在32 kb时,通过组策略很容易推出。


3
2018-05-19 18:37





在autoexec中,或在DOS提示符下,键入 提示%USERDOMAIN%\%USERNAME%$ p $ g,您将显示您登录的对象,并看到如下典型提示:DOMAIM \ username C:>


1
2018-01-28 15:55