• {{ item.name }}
  • Home
  • Linux
  • Programming
    • Python
  • Life
  • Other
  • Tools
  • 投资者该如何参与优秀的区块链项目- NuLink社区圆桌会议
  • 什么是NuLink?- 项目中文社区与项目研究组成员 Rookie 对话实录
  • NuLink 融资 400 万美元用于开发隐私保护技术
  • NuLink的零知识证明介绍(1)
  • 用bitwarden_rs搭建属于自己的密码管理器
  • 修复 CentOS vps 网卡失效
  • 记录用mac给Nexus6P刷Android10的错误
  • Centos 6.8启用 TCP BBR拥塞控制算法
  • Nginx 启用HTTP2功能
  • Mac 安装adb工具
  • WordPress 默认编辑器代码按钮

Linux w who whoami uptime

  • iansiu
  • 2015-12-14
  • 0

w 显示登录到系统的用户情况,以及系统的平均负荷

语法:

w [-fhlsuV] [用户名称]

命令参数:

-f  开启或关闭显示用户从何处登入系统。
-h  不显示各栏位的标题信息列。
-l  使用详细格式列表,此为预设值。
-s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。
-u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。
-V  显示版本信息。

w
14:54:15 up 1 day, 22:08, 2 users, load average: 0.22, 0.14, 0.10
USER      TTY       FROM      LOGIN@         IDLE               JCPU                PCPU             WHAT
用户       终端     客户端IP    登陆时间      CPU空闲时间     此终端下进程占用的时间  w这个命令占用的时间     运行的命令

system load averages  系统的平均负荷

分别是:1分钟、5分钟、15分钟 主要是看15分钟,单个CPU超过不超过1是最好的状态。
也就是如果当前只有一个CPU,那么最好的状态应该是:0.9,0.9,0.9,不超过1就行,如果CPU有8个核心,那么不超过8就行,以此类推。
超过之后只能说明当前系统处于忙碌状态,并不会因此宕机(不是很严重的情况下),说明还有调优的空间。

uptime 命令是w命令的简化版(从内容上说)查看系统已运行多久还有系统平均负荷

uptime
14:54:15 up 1 day, 22:08, 2 users, load average: 0.22, 0.14, 0.10

uptime 仅有一个 -V 参数用来显示版本号

who命令 显示目前登入系统的用户信息

语法:

who [-Himqsw][--help][--version][am i][记录文件]

参数:

-a 同: -b -d --login -p -r -t -T -u
-b 最后一次系统引导时间。
-d 显示死掉的进程,包括其时间等。
-H 显示每列的标题。
-i 不建议使用,被-u取代。
-l 不建议使用,可使用--lookup,通过DNS转化hostnames。
-m 与who am i相同。
-p 显示初始化引起的活动进程。
-q 显示登录用户名和登录用户数量。
-r 显示当前运行级别。
-s 此参数将忽略不予处理,仅负责解决who指令其他版本的兼容性问题。
-t 显示上次系统时钟变化。
-T或-w 显示用户信息状态。
-u 列出登陆的用户。

whoami 用于查看当前有效用户名的命令,由英文单句“Who am I?(我是谁?)”连接而成

id -un 也是用于查看当前有效用户名的命令

who、whoami命令 和 who am i 命令的区别

[iansiu@mail ~]$ who
iansiu   tty1         2016-04-05 17:58
iansiu   pts/0        2016-07-03 11:01 (192.168.1.88)
iansiu   pts/1        2016-07-03 04:33 (192.168.1.88)
[iansiu@mail ~]$ who am i
iansiu   pts/0        2016-07-03 11:01 (192.168.1.88)
[iansiu@mail ~]$ whoami
iansiu

现在更换用户身份

[iansiu@mail ~]$ su
Password: 
[root@mail iansiu]# who
iansiu   tty1         2016-04-05 17:58
iansiu   pts/0        2016-07-03 11:01 (192.168.1.88)
iansiu   pts/1        2016-07-03 04:33 (192.168.1.88)
[root@mail iansiu]# who am i
iansiu   pts/0        2016-07-03 11:01 (192.168.1.88)
[root@mail iansiu]# whoami
root
[root@mail iansiu]# id -un
root

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

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

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

w - Show who is logged on and what they are doing.
who - show who is logged on
whoami - print effective userid
who am i - When a user logs in as a root across the network, both the command whoami and who am i will show you root. However, when a user abc logs in remotely and runs su – root, whoami will show root whereas who am i will show abc

© 2025 laowang's blog
Theme by Wing