Linux命令(18)查看当前用户who、whoami、who am i

时间:2023-03-10 04:52:31
Linux命令(18)查看当前用户who、whoami、who am i

首先看命令的使用情况:

[@sjs_9_108 ~]$ whoami
spider
[@sjs_9_108 ~]$ who am i
spider pts/ -- : (192.168.1.1)
[@sjs_9_108 ~]$ su - root
Password:
[@sjs_9_108 ~]# whoami #变了
root
[@sjs_9_108 ~]# who am i #这个却没变
spider pts/ -- : (192.168.1.1)
[@sjs_9_108 ~]#

那么问题来了,为什么切换用户后,who am i,不会变化呢?

whoami 显示的是当前“操作用户”的用户名

who am i显示的是“登录用户”的用户名(用户登录时用过的id)

实际用户 = uid  即 user id、有效用户 = euid 即effecttive user id

who am i  此命令相当于 who -m

who 命令:

[@sjs_9_108 word_code_160_180]$ who
spider pts/ -- : (192.168.1.1)
spider pts/ -- : (192.168.1.1)
  • 第一列显示用户名称
  • 第二列显示用户连接方式。Tty意味着用户直接连接到电脑上,而pts意味着远程登录。  
  • 第三、四列分别显示日期和时间
  • 第五列显示用户登录IP地址
命令 显示内容
     -l 显示登录进程
      -u 显示空闲时间和PID信息
      -b 显示上一次重新启动的日期
  -H 为每一列添加标题
  -m 查看当前终端信息
  -q 统计当前登录用户数量
      -s 使用简短的格式来显示
-m -H 只显示当前用户
-T  -H 显示终端属性
-l   -H 显示用户登录来源