Linux whoami命令详解

whoami 是一个用于显示当前有效用户名的 Linux 命令,是 GNU coreutils 软件包的一部分。其名称源自英文短句 "Who am I?",即 "我是谁",用于确认当前会话的用户身份。


一、命令概述与核心功能

whoami 的核心功能是打印与当前有效用户****ID 相关联的用户名。这里的 "有效用户" 是指当前 Shell 会话实际拥有的身份,尤其在使用 su 或 sudo 切换用户后,whoami 会返回当前所处的用户身份,而非最初登录的用户。

whoami 命令最早出现于 2.9 BSD 系统,作为 who am i 的便捷形式。当前 GNU 版本由 Richard Mlynarik 编写。

" 当前有效用户 " 与 " 当前登录用户 " 的区别

当用户通过 su(不携带用户名时默认切换到 root)从一个账户切换到另一个账户后,whoami 返回的是切换后的用户身份,而非最初登录的用户。这是因为 Linux 使用 真实用户 ID ( real UID ) 和 有效用户 ID ( effective UID ) 两个概念来管理用户身份,whoami 依据的是有效用户 ID,因此能准确反映当前命令执行者的权限身份。


二、命令格式与选项

语法格式 :

bash

复制代码
whoami [OPTION]...

可用选项 :

选项 说明
--help 显示帮助信息并退出
--version 显示版本信息并退出

whoami 只有这两个选项,执行时通常不带任何参数即可直接使用。


三、使用示例

3.1 基本用法:查看当前用户名

bash

复制代码
whoami

输出示例:

text

复制代码
john_doe

直接显示当前用户的用户名,输出极为简洁。

3.2 切换用户后确认身份

使用 su 切换到其他用户后,可用 whoami 确认当前身份:

bash

复制代码
su - jane_doe
复制代码
Password: 
复制代码
whoami
复制代码
jane_doe

输出显示当前已切换到 jane_doe 用户。

相关推荐
晚风叙码13 分钟前
Linux 进程概念(上):从冯诺依曼到进程调度
linux·运维·计算机外设
Z21-X22 分钟前
云原生运维笔记:硬核拆解OpenStack计算与存储——从主机聚合到Cinder挂载全流程
运维·笔记·学习·云原生·openstack
邪修king27 分钟前
Re:Linux系统篇(三十八):进程间通信ChapterSystem V 信号量深度解析|同步互斥、内核源码、C 指针多态、实战代码
java·linux·c语言
开开心心就好27 分钟前
电脑语音实时转文字工具,会议记录很省事
运维·服务器·前端·c#·ocr·perl·1024程序员节
坤坤子吖28 分钟前
Linux网络编程基础:从 MAC 到 IP,理解网络数据是怎么传输的
linux·网络·笔记·学习
一只鹿鹿鹿43 分钟前
医院绩效管理体系方案
大数据·运维·安全·web安全·制造
java_logo1 小时前
Docker 部署 Portainer CE 中文版:轻松搭建容器管理平台
运维·docker·容器·portainer·容器管理·轩辕镜像·portainer ce
山东孙燕姿1 小时前
前端框架升级:不敢动的组件怎么办
大数据·运维·服务器·网络·人工智能·前端框架
古法老登瞎折腾9 小时前
大数据智能运维实战(十一):运维 MCP 的工程化——权限、限流、审计与错误处理
java·大数据·运维·spring ai·mcp
琥珀.9 小时前
mysql中json数组转列表查询
linux·运维·服务器