且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

【一天一个shell命令】好管家-查看当前登录用户-who

更新时间:2022-09-06 12:53:13

说明

who 查看当前登录用户。(对,他跟w的作用有些类似,但是更全面,他更适合一个复杂的环境,相比简单的环境,他太鸡肋)

 相关命令

w--查看当前登录用户 

users--查看当前登录用户

学习实例


  1. $who 

如图:

【一天一个shell命令】好管家-查看当前登录用户-who 

解释:shelldir就是当前用户,后面参数估计大家也猜到了,是系统时间和我本机的IP。

 帮助信息

用法:who [选项]... [ 文件 | 参数1 参数2 ] 
显示当前已登录的用户信息。 

短选项 长选项 说明
-a, --all 等于-b -d --login -p -r -t -T -u 选项的组合
-b, --boot 上次系统启动时间

-d,

--dead 显示已死的进程
-H, --heading

输出头部的标题列

  --ips 打印ip代替hostnames

-l,

--login 显示系统登录进程
  --lookup 尝试通过 DNS 查验主机名
-m   只面对和标准输入有直接交互的主机和用户
-p, --process 显示由 init 进程衍生的活动进程
-q, --count 列出所有已登录用户的登录名与用户数量
-r, --runlevel 显示当前的运行级别
-s,

--short

只显示名称、线路和时间(默认)
-T,-w, --mesg 用+,- 或 ? 标注用户消息状态
-u, --users 列出已登录的用户
  --message    等于-T
  --writable 等于-T
  --help 显示此帮助信息并退出
  --version    显示版本信息并退出
如果文件未被指定,则使用/var/run/utmp。/var/log/wtmp 是通用的相关文件。 
如果给定了参数1 和参数2,-m 会假定:"am i"或"mom likes" 
为参数。(ubuntu翻译还是一如既往的糟糕)

关于/var/run/utmp,/var/log/wtmp

每次登陆,会在utmp和wtmp中记录两条信息

 实例

who打印最全的信息


  1. $who –aH 

【一天一个shell命令】好管家-查看当前登录用户-who


轶事

大家试试命令:

who am i(有空格)和 whoami 有什么区别;

先看下


  1. $who am i 

【一天一个shell命令】好管家-查看当前登录用户-who 

再看下


  1. $whoami 

【一天一个shell命令】好管家-查看当前登录用户-who 

小知识分享 

  1. tty(终端设备的统称):  

    tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。 
    终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。

 2. pty(虚拟终端): 

    但是如果我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端pty(pseudo-tty)

3. pts/ptmx(pts/ptmx结合使用,进而实现pty): 

    pts(pseudo-terminal slave)是pty的实现方法,与ptmx(pseudo-terminal master)配合使用实现pty。









本文转自 wws5201985 51CTO博客,原文链接:http://blog.51cto.com/yjplxq/1040945,如需转载请自行联系原作者