一、Windows系统选项
**/UPN**
功能:以用户主体名称(User Principal Name)格式显示用户名(如 username@domain.com)。
示例:
cmd
whoami /UPN # 输出:user@domain.local
**/FQDN**
功能:以完全限定域名(Fully Qualified Domain Name)格式显示用户名(如 username.domain.local)。
示例:
cmd
whoami /FQDN # 输出:username.domain.local
**/LOGONID**
功能:显示当前用户的登录标识符(Logon ID)。
示例:
cmd
whoami /LOGONID # 输出:0x1234
**/USER**
功能:显示当前用户的域、用户名及安全标识符(SID)。
示例:
cmd
whoami /USER # 输出:DOMAIN\username (S-1-5-21-…)
**/GROUPS**
功能:列出当前用户所属的所有组、组类型及SID。
示例:
cmd
whoami /GROUPS # 输出:BUILTIN\Administrators…
**/PRIV**
功能:显示当前用户的安全特权(如 SeBackupPrivilege)。
示例:
cmd
whoami /PRIV # 输出:SeBackupPrivilege…
**/ALL**
功能:显示当前用户的用户名、组、SID、声明及特权等完整信息。
示例:
cmd
whoami /ALL # 输出:用户名、组、SID、声明、特权等
**/FO format**
功能:指定输出格式(TABLE、LIST、CSV)。
示例:
cmd
whoami /ALL /FO CSV # 以CSV格式输出
**/NH**
功能:禁止显示列标题(仅对TABLE和CSV格式有效)。
示例:
cmd
whoami /ALL /FO TABLE /NH # 无列标题的表格输出
二、Linux系统选项
无额外选项
功能:仅显示当前有效用户名(等价于 id -un)。
示例:
bash
whoami # 输出:username
特殊场景
权限切换:使用 sudo 或 su 切换用户后,whoami 会显示新用户。
bash
sudo whoami # 输出:root
三、跨平台通用行为
等价命令
Linux:whoami 等价于 id -un。
Windows:whoami 提供更详细的用户信息(如组、特权)。
权限要求
Windows:需管理员权限查看完整信息(如 /PRIV)。
Linux:普通用户即可查看自身信息。
四、注意事项
Linux局限性
whoami 无法显示组信息或特权,需使用 groups 或 id 命令补充。
bash
groups # 输出用户所属组
id # 输出用户及组信息
输出格式控制
Windows的 /FO 和 /NH 参数在Linux中无效,需通过脚本处理输出格式。
五、引用说明
Windows选项与示例:
Linux选项与行为:如需查看完整手册,可通过 whoami /?(Windows)或 man whoami(Linux)获取详细信息。