`
dcj3sjt126com
  • 浏览: 1822893 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux命令who am i ,who ,whoami

 
阅读更多

 

今天要说的不是成龙的电影“我是谁”,而是Linux里的who系列命令,包括who、whoami和who am i。

先看看这三个命令的输出信息:

 

[rocrocket@rocrocket ~]$ whoami
rocrocket
[rocrocket@rocrocket ~]$ who am i
rocrocket pts/3        2008-12-30 13:17 (:0.0)
[rocrocket@rocrocket ~]$ who
rocrocket :0           2008-12-30 09:54
rocrocket pts/0        2008-12-30 09:55 (:0.0)
rocrocket pts/1        2008-12-30 09:57 (:0.0)
rocrocket pts/3        2008-12-30 13:17 (:0.0)
当我用sudo su(或者sudo su -)更换到root用户之后,你再看看:

[rocrocket@rocrocket ~]$ sudo su
[root@rocrocket rocrocket]# whoami
root
[root@rocrocket rocrocket]# who am i
rocrocket pts/3        2008-12-30 13:17 (:0.0)
[root@rocrocket rocrocket]# who
rocrocket :0           2008-12-30 09:54
rocrocket pts/0        2008-12-30 09:55 (:0.0)
rocrocket pts/1        2008-12-30 09:57 (:0.0)
rocrocket pts/3        2008-12-30 13:17 (:0.0)

看出区别来了吧,whoami显示的是当前“操作用户”的用户名,而who am i显示的是“登录用户”的用户名。

用Linux的术语来解释就是:(实际用户=uid,即user id。有效用户=euid,即effective user id)

who am i 显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m。
whoami   显示的是有效用户ID.

好了,明白了两者区别之后,我们来说说who这个命令。

有人会问,为什么我sudo su到root之后,who里面却没有显示呢?

这是因为su过去的用户进程空间是作为一个子空间存在,他并没有得到一个登录的tty。

who这个命令重点是用来查看当前有哪些用户登录到了本台机器上。

who -m的作用和who am i的作用是一样的。

who -q用来显示当前登录用户的个数。

当你觉得who的输出信息晦涩难懂时,可以使用who -H来输出,这样可以在每列加上列名称,有助于阅读。

分享到:
评论

相关推荐

    whoami命令 打印当前登录用户

    whoami命令是打印与当前有效用户ID关联的用户名;这个工具可以用来获取本地系统上当前用户(访问令牌)的用户名和组信息,以及相应的...与该功能相关的Linux命令:glances命令 – 高层次的多子系统概览kexec命令 – 直

    浅谈linux中的whoami与 who指令

    whoami 与 who am i的区别 who这个命令重点在用来查看当前有那些用户登录到了本台机器上 who -m的作用和who am i的作用是一样的 who am i显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m ...

    whoami-显示登录名

    whoami 命令显示登录名。与使用命令 who 并指定 am i 不同,whoami 命令在有 root 用户权限时也有效,因为它不检查 /etc/utmp 文件。

    Linux whoami命令用法详解

    Linux whoami命令 Linux whoami命令用于显示自身用户名称。 显示自身的用户名称,本指令相当于执行”id -un”指令。 语法whoami [--help][--version] 参数说明: –help 在线帮助。 –version 显示版本信息。 实例 ...

    whoami(linux下实现)

    linux下whoami的编写,给初学者用

    Linux 基础 73-用户管理-04-who和whoami.flv

    Linux 基础 73-用户管理-04-who和whoami.flv

    Linux命令大全(CHM格式离线版)

    Linux命令大全(CHM格式离线版) Linux命令大全(修改版) 进行重新编译的说明 文件传输 bye ftp ftpcount ftpshut ftpwho ncftp tftp uucico uucp uupick uuto 备份压缩 ar bunzip2 bzip2 bzip2recover compress cpio ...

    windows dos环境下直接运行linux命令集合

    使用方法,解压到本地目录,配置path,即可在dos下使用linux命令。 windows下能直接执行的linux命令,基本包括日常所有,如:[.exe grolbp.exe regtool.exe a2p.exe grolj4.exe rm.exe a2p5.10.0.exe grops.exe ...

    cmd操作命令和linux命令大全收集

    CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本、文件系统版本) 命令大全 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 ,是一个 监测网络中 DNS...

    Linux命令搜索工具linux-command.zip

    adduser、chfn、chsh、date、exit、finger、free、fwhois、gitps、groupdel、groupmod、halt、id、kill、last、lastb、login、logname、logout、...useradd、userconf、userdel、usermod、vlock、w、who、whoami、whois...

    Linux命令大全完整版

    Linux命令大全完整版 目 录 目 录 I 1. linux系统管理命令 1 adduser 1 chfn(change finger information) 1 chsh(change shell) 1 date 2 exit 3 finger 4 free 5 fwhois 5 gitps(gnu interactive tools ...

    基础的Linux常用命令

    在此我就介绍几条比较基础的Linux命令帮助大家入门。 1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。 2. ls...

    linux常用命令源码(ls,cp,chmod,df等一百多个命令)

    linux下大部分常用命令源码,偶正要开始学习-_- base64.c basename.c c99-to-c89.diff cat.c chcon.c chgrp.c chmod.c chown.c chown-core.c chown-core.h chroot.c cksum.c comm.c copy.c cp.c cp-hash.c csplit.c ...

    UNIX命令格式

    who am i wc显示一个文件中的行数、单词数、字符数 -l只显示行数 -w只显示单词数 -c只显示字符数 ps列出系统中当前正在运行的进程信息 PID TTY TIME CMD 进程号 伪终端号 占用cpu的时间 shell 3490 pts/1 00:...

    linux命令c语言自己实现(大概40来个)

    自己学习《APUE》时写的linux下一些命令(大概40个左右)实现,仅当学习使用,这些命令包括cat cp echo head ls paste rmdir tail umask who chattr cut expand join mkdir pwd sed tee uniq chgrp date find last ...

    linux-常用命令

    linux常用指令集合,可打印出来,平常的时候看一看。 1. 查看目录下有什么文件/目录 > ls //list列出目录的文件信息 > ls -l //list -list以“详细信息”查看目录文件 > ls -a //list -all查看目录“全部”(包括...

    Linux命令大全

    linux命令大全,中文版本 Linux命令大全(修改版) 进行重新编译的说明 文件传输 bye ftp ftpcount ftpshut ftpwho ncftp tftp uucico uucp uupick uuto 备份压缩 ar bunzip2 bzip2 bzip2recover compress cpio dump ...

    who.rar_iam.c whoami.c_who.c whoami.c iam.c

    系统调用 将字符串参数name的内容拷贝到内核中保存下来 将内核中由iam()保存的名字拷贝到name指向的用户地址空间中,同时确保不会对name越界访存

    Linux-commands:Linux命令和Shell脚本编写说明

    Linux命令有用Linux命令有多少用户登录: who 当前用户是谁: whoami 打印日期: date 显示日历: cal 打印工作目录: pwd 打印文件和当前目录的目录: ls 手动帮助: man whoami 创建一个新目录: mkdir directory...

Global site tag (gtag.js) - Google Analytics