w 命令详解
更新时间:2026-08-28。本文是「一个命令一个文档」系列,属于进程与系统命令族(见进程与系统命令族)。谁登录了、在干嘛、系统累不累,一条命令全看见。
w 把 uptime(见uptime)的负载摘要,加上"当前登录用户 + 各自在跑什么命令"的明细,合在一起输出。
一、基本用法
bash
w
# 14:30:01 up 23 days, 3 users, load average: 0.50, 0.75, 0.60
# USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
# alice tty1 - 09:12 1:20m 0.05s 0.02s vim report.md
# bob pts/0 10.0.0.5 10:30 2:01 1.20s 0.80s python train.py第一行就是 uptime 的输出(运行时长/用户数/负载)。下面是每个登录会话:谁、从哪(TTY/来源 IP)、登录多久、空闲多久、JCPU/PCPU、正在执行的命令(WHAT)。
二、JCPU 与 PCPU
bash
# JCPU:该用户本次登录以来,所有进程占用的 CPU 时间(含已经结束的)
# PCPU:当前正在跑的那个命令(WHAT 列)占用的 CPU 时间判断"谁在吃 CPU"看 PCPU/JCPU 高的行。比如某人 PCPU 飙高且 WHAT 是
python train.py,那就是他在跑重任务——资源争抢时一眼锁定责任人。
三、与 who / uptime 的关系
bash
uptime # 只看负载摘要(见 [uptime](/linux/cmd/uptime.md))
who # 只看登录用户列表(见 [who](/linux/cmd/who.md))
w # 二者合一 + 每个用户在干嘛四、实战:资源争抢定位
bash
w # 看谁 PCPU 高、WHAT 是什么
# 发现 bob 的 python 占满,沟通或 kill(见 [kill](/linux/cmd/kill.md))多用户服务器变慢时,
w是第一步:负载高 + 某用户 PCPU 高 + WHAT 显示具体命令,立刻知道该找谁、哪个进程。比直接 top 更快定位到"人"。
一句话总结
w = 登录用户活动 + 负载:输出 = uptime 摘要(见uptime)+ 每用户明细(WHO/来源/IP/空闲/JCPU/PCPU/WHAT);JCPU 是登录以来总 CPU、PCPU 是当前命令 CPU,看高的行锁定资源占用者;是 who+uptime 的合体,多用户服务器变慢时第一步用它定位"谁在跑什么"。