作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动。有些时候,你甚至需要知道他(她)们正在做什么。本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法。

1. 使用w命令查看登录用户正在使用的进程信息

w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:

  • 用户名称
  • 用户的机器名称或tty号
  • 远程主机地址
  • 用户登录系统的时间
  • 空闲时间(作用不大)
  • 附加到tty(终端)的进程所用的时间(JCPU时间)
  • 当前进程所用时间(PCPU时间)
  • 用户当前正在使用的命令

w命令还可以使用以下选项

  • -h忽略头文件信息
  • -u显示结果的加载时间
  • -s不显示JCPU, PCPU, 登录时间
$ w23:04:27 up 29 days,  7:51,  3 users,  load average: 0.04, 0.06, 0.02
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
ramesh   pts/0    dev-db-server        22:57    8.00s  0.05s  0.01s sshd: ramesh [priv]
jason    pts/1    dev-db-server        23:01    2:53   0.01s  0.01s -bash
john     pts/2    dev-db-server        23:04    0.00s  0.00s  0.00s w$ w -h
ramesh   pts/0    dev-db-server        22:57   17:43   2.52s  0.01s sshd: ramesh [priv]
jason    pts/1    dev-db-server        23:01   20:28   0.01s  0.01s -bash
john     pts/2    dev-db-server        23:04    0.00s  0.03s  0.00s w -h$ w -u
 23:22:06 up 29 days,  8:08,  3 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
ramesh   pts/0    dev-db-server        22:57   17:47   2.52s  2.49s top
jason    pts/1    dev-db-server        23:01   20:32   0.01s  0.01s -bash
john     pts/2    dev-db-server        23:04    0.00s  0.03s  0.00s w -u$ w -s23:22:10 up 29 days,  8:08,  3 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM               IDLE WHAT
ramesh   pts/0    dev-db-server        17:51  sshd: ramesh [priv]
jason    pts/1    dev-db-server        20:36  -bash
john     pts/2    dev-db-server         1.00s w -s

2.使用who命令查看(登录)用户名称及所启动的进程

who命令用于列举出当前已登录系统的用户名称。其输出为:用户名、tty号、时间日期、主机地址。

$ who
ramesh pts/0        2009-03-28 22:57 (dev-db-server)
jason  pts/1        2009-03-28 23:01 (dev-db-server)
john   pts/2        2009-03-28 23:04 (dev-db-server)

如果只希望列出用户,可以使用如下语句:

$ who | cut -d' ' -f1 | sort | uniq
john
jason
ramesh

补充:users命令,可用于打印输出登录服务器的用户名称。该命令除了有help和version选项外,再没有其他选项。如果某用户使用了多个终端,则相应的会显示多个重复的用户名。

$ users
john jason ramesh

3. 使用whoami命令查看你所使用的登录名称

whoami命令用于显示登入的用户名。

$ whoami
john

whoami命令的执行效果和id -un的效果完全一样,例如:

$ id -un
john

whoami命令能显示当前登入的用户名称,以及当前所使用的tty信息。该命令的输出结果包括如下内容:用户名、tty名、当前时间日期,同时还包括用户登录系统所使用的链接地址。

$ who am i
john     pts/2        2009-03-28 23:04 (dev-db-server)$ who mom likes
john     pts/2        2009-03-28 23:04 (dev-db-server)Warning: Don't try "who mom hates" command.

当然,如果你使用su命令改变用户,则该命令(whoami)所显示的结果将随之改变。

4. 随时查看系统的历史信息(曾经使用过系统的用户信息)

last命令可用于显示特定用户登录系统的历史记录。如果没有指定任何参数,则显示所有用户的历史信息。在默认情况下,这些信息(所显示的信息)将来源于/var/log/wtmp文件。该命令的输出结果包含以下几列信息:

  • 用户名称
  • tty设备号
  • 历史登录时间日期
  • 登出时间日期
  • 总工作时间
$ last jason
jason   pts/0        dev-db-server   Fri Mar 27 22:57   still logged in
jason   pts/0        dev-db-server   Fri Mar 27 22:09 - 22:54  (00:45)
jason   pts/0        dev-db-server   Wed Mar 25 19:58 - 22:26  (02:28)
jason   pts/1        dev-db-server   Mon Mar 16 20:10 - 21:44  (01:33)
jason   pts/0        192.168.201.11  Fri Mar 13 08:35 - 16:46  (08:11)
jason   pts/1        192.168.201.12  Thu Mar 12 09:03 - 09:19  (00:15)
jason   pts/0        dev-db-server   Wed Mar 11 20:11 - 20:50  (00:39

转载于:https://www.cnblogs.com/hdk1993/p/6086479.html

Linux下用于查看系统当前登录用户信息的4种方法相关推荐

  1. Linux查看系统中用户信息,Linux下用于查看系统当前登录用户信息的4种方法

    作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正在做什么.本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法. 1. 使用w ...

  2. CentOS下用于查看系统当前登录用户信息的4种方法

    1. 使用w命令查看登录用户正在使用的进程信息 w命令用于显示已经登录系统的用户的名称,以及他们正在做的事.该命令所使用的信息来源于/var/run/utmp文件.w命令输出的信息包括: 用户名称 用 ...

  3. 当前服务器系统内核版本是多少,linux下如何查看系统和内核版本

    linux下如何查看系统和内核版本 (2011-04-11 17:35:16) 标签: linux version 杂谈 1. 查看内核版本命令: 1) [root@q1test01 ~]# cat ...

  4. 安卓开发 登录用户信息缓存_在Linux上使用finger命令查询登录用户信息

    请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本文主要讲解finger命令的作用和日常使用案例. f ...

  5. 小程序获取用户信息的两种方法

    小程序获取用户信息的两种方法 第一种使用 getUserProfile 代码示例 第二种使用 头像昵称填写 相信大家之前也经常使用open-data获取用户的头像和昵称吧,但微信的这个改编意味着我们要 ...

  6. 请给出linux中查看系统已经登录用户的命令?

    w命令 第一行:当前系统运行了多久和系统负载 谁正在远程登录系统并且在干什么 1 [root@martin ~]# w 2 11:30:33 up 4 days, 18:10, 2 users, lo ...

  7. linux下如何查看系统和内核版本

    1. 查看内核版本命令: 1) [root@q1test01 ~]# cat /proc/version Linux version 2.6.9-22.ELsmp (bhcompile@crowe.d ...

  8. Linux下如何查看系统启动时间和运行时间以及安装时间

    1.uptime命令 输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.00 2.查看/proc/uptime文件计 ...

  9. 在Linux中查找用户帐户信息和登录详细信息的11种方法

    本文将介绍 11 种在 Linux 系统查找用户相关信息的有用方法.这里,我们会讲解在系统中获取一个用户账户详细信息.展示登录详细信息以及用户行为数据的命令. 如果你想要在 Linux 中添加用户,可 ...

最新文章

  1. 「特征工程」与「表示学习」
  2. Wireshark初次使用
  3. M码小黄衫买家秀=w=
  4. python的原则_python 类的使用原则
  5. JVM-Java内存区域
  6. python越学越糊涂_你越努力,编程水平越差!这样学 Python ,更容易成为高手!...
  7. 【中国好公司】中国人最向往的公司:BAT相差太多!华为排名出乎意料
  8. java 连接eureka_在同一应用程序中的配置服务器和eureka服务器:尝试连接到localhost:8761...
  9. ActionMapping
  10. 移动开发平台收入对比
  11. 鸿蒙适配手机时间,华为鸿蒙OS适配时间表出炉:麒麟9000最先,麒麟990第二
  12. RAID6磁盘阵列数据恢复
  13. ISO50001认证辅导,ISO50001能源管理体系认证至少符合以下条件
  14. PMP培训内容有哪些?都要仔细看!
  15. PS 一寸照换底
  16. 揭秘苹果应用审核团队(史上最全版)
  17. xgboost early_stop_rounds是如何生效的?
  18. Latex 安装及学习教程
  19. 我是一个硬件工程师,面试官随口问了这些问题 | 收藏
  20. 王道_线性表代码合集

热门文章

  1. 代码规范性与品质问题~
  2. valgrind——Callgrind检测程序代码的运行时间和调用过程,程序分析性能。
  3. ECSHOP学习笔记
  4. “分布式哈希”和“一致性哈希”的概念与算法实现
  5. asp.net的Ajax学习进阶
  6. SQL Server数据库六种数据移动方法
  7. 经典网络VGGNet介绍
  8. 大学生目前普遍存在的问题,看你中招了没?
  9. 系统dsn oracle,linux平台配置oracle odbc dsn的方法.docx
  10. 学计算机为什么会突发,为什么电脑会突然自动重启?