首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >who和whoami命令的区别

who和whoami命令的区别
EN

Unix & Linux用户
提问于 2014-09-19 17:07:55
回答 2查看 56.2K关注 0票数 10

who命令的手册页描述是who - show who is logged on

但是有一个类似的命令whoamiwhoami的手册页描述是

whoami - print effective userid

有人能解释这些命令到底是干什么的吗?他们之间有什么不同?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2014-09-19 17:13:04

我在shell中以root用户身份登录,并输入who,这是输出。

代码语言:javascript
复制
who
root     tty1         2014-08-25 14:01 (:0)
root     pts/0        2014-09-05 10:22 (:0.0)
root     pts/3        2014-09-19 10:08 (xxx.xxx.edu)

它有效地显示了已经建立连接的所有用户。

代码语言:javascript
复制
ssh ramesh@hostname

再次运行who将为用户ramesh带来另一个条目。

代码语言:javascript
复制
who
root     tty1         2014-08-25 14:01 (:0)
root     pts/0        2014-09-05 10:22 (:0.0)
root     pts/3        2014-09-19 10:08 (xxx.xxx.edu)
ramesh   pts/4        2014-09-19 12:11 (xxx.xxx.edu)

root shell中,我只需执行su ramesh,然后运行whoami。它将给我当前用户ramesh作为输出。

实际上,who给出了当前在机器上登录的所有用户的列表,使用whoami,您可以知道当前的用户在shell中。

票数 9
EN

Unix & Linux用户

发布于 2018-05-23 18:58:53

请注意whowhoami之间的区别。

who命令将始终显示用于登录的帐户(真实用户信息)。

whoami命令将显示您的有效用户。

例如,如果您以“谴责”身份登录,则whowhoami命令将显示如下所示:

代码语言:javascript
复制
> who
blammy  pts/0  2011-04-23 13:43 (123.23.123.123)

> whoami
blammy

这表明用户于2011年4月23日13:43从ip "123.23.123.123“登录。

如果然后运行su - kapow,则将有效用户更改为"kapow“。

现在,whowhoami命令将显示如下所示:

代码语言:javascript
复制
> who
blammy  pts/0  2011-04-23 13:43 (123.23.123.123)

> whoami
kapow

注意,who信息保持不变,但whoami信息根据su进行更改。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/156453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档