精华内容
下载资源
问答
  • who命令功能:用于输出当前用户的登录信息,如:系统的启动时间,活动进程,使用者ID,使用终端等who命令的语法格式:who [参数] [选项]-----常用参数说明-------a:打印全面信息-b:打印系统最近启动时间-d:打印死掉的...

    摘要:

    下文讲述Linux中who的功能说明,如下所示;

    who命令功能:

    用于输出当前用户的登录信息,

    如:系统的启动时间,

    活动进程,使用者ID,使用终端等

    who命令的语法格式:

    who [参数] [选项]

    -----常用参数说明------

    -a:打印全面信息

    -b:打印系统最近启动时间

    -d:打印死掉的进程

    -l:打印系统登录进程

    -H:带有列标题打印用户名,登录终端和登录时间

    -t:打印系统上次锁定时间

    -u:打印已登录用户列表

    -----注意事项----

    1.who命令常用于系统管理员了解系统运行状态时使用

    2.who命令返回的信息

    来源于文件“/var/log/utmp”和“/var/log/wtmp”

    例:

    who命令的示例分享

    ---输出用户信息-带标题

    [root@maomao365.com ~]# who -H

    NAME LINE TIME COMMENT

    root pts/0 2020-12-03 10:32 (120.236.233.94)

    ---打印全部信息

    [root@maomao365.com ~]# who -H -a

    NAME LINE TIME IDLE PID COMMENT EXIT

    system boot 2019-08-22 17:20

    run-level 3 2019-08-22 17:20

    LOGIN tty1 2019-08-22 17:20 1206 id=1

    LOGIN tty2 2019-08-22 17:20 1208 id=2

    LOGIN tty3 2019-08-22 17:20 1210 id=3

    LOGIN tty4 2019-08-22 17:20 1212 id=4

    LOGIN tty5 2019-08-22 17:20 1214 id=5

    LOGIN tty6 2019-08-22 17:20 1216 id=6

    LOGIN /dev/ttyS0 2019-08-22 17:20 1217 id=v/tt

    root + pts/0 2020-12-03 10:32 . 5436 (120.236.233.94)

    pts/1 2020-11-26 22:51 6960 id=ts/1 term=0 exit=0

    pts/2 2019-11-09 19:00 23808 id=ts/2 term=0 exit=0

    ---打印系统最近启动时间

    [root@maomao365.com ~]# who -b

    system boot 2001-05-23 17:20

    ---打印系统登录进程

    [root@maomao365.com ~]# who -l

    LOGIN tty1 2019-08-22 17:20 1206 id=1

    LOGIN tty2 2019-08-22 17:20 1208 id=2

    LOGIN tty3 2019-08-22 17:20 1210 id=3

    LOGIN tty4 2019-08-22 17:20 1212 id=4

    LOGIN tty5 2019-08-22 17:20 1214 id=5

    LOGIN tty6 2019-08-22 17:20 1216 id=6

    LOGIN /dev/ttyS0 2019-08-22 17:20 1217 id=v/tt

    展开全文
  • linux who命令

    2021-05-12 07:01:00
    who命令能做些什么功能命令参数who命令是如何工作的原理如何编写who命令流程图示例代码扩展who am i 和 whoamiwho命令能做些什么功能who命令可以查看谁正在使用系统。每一行代表一个已登录的用户第一列代表用户名第...

    who命令能做些什么

    功能

    命令参数

    who命令是如何工作的

    原理

    如何编写who命令

    流程图

    示例代码

    扩展

    who am i 和 whoami

    who命令能做些什么

    功能

    who命令可以查看谁正在使用系统。

    每一行代表一个已登录的用户

    第一列代表用户名

    第二列代表终端名

    第三列代表登录时间

    第四列(括号里面的)代表登录地址

    (有些版本默认不显示第四列的内容)

    命令参数

    -a ——–显示所有用户

    -b ——–最近一次系统启动的时间

    -d ——–显示已退出的进程

    -H ——–显示表头

    -l ———只显示系统登录进程

    –ips ——应显示用户名的地方显示IP地址(两个’ - ‘)

    –lookup -尝试通过DNS对用户名排序(两个’ - ‘)

    -m ——–与命令”who am i”相同1

    -q ———只显示登录系统的用户名和用户个数

    -r ———显示当前运行等级

    –help —–显示帮助信息

    –version -显示版本信息

    who命令是如何工作的

    原理

    who命令通过读取utmp文件来获取已登录用户的信息,已登录用户的信息存放在/var/run/utmp中(不同的系统发行版中存放路径可能有所不同)。

    utmp文件中保存的是结构体数组,数组元素的类型是utmp类型的结构,可以在utmp.h中找到utmp类型的定义

    struct utmp {

    char ut_user[32]; //user login name

    char ut_id[14];

    char ut_line[32]; //device name

    short ut_type;

    pid_t ut_pid;

    struct exit_status {

    short e_termination;

    short e_exit;

    }

    time_t ut_time; //time entry was made

    char ut_host[64]; //host name

    }

    utmp结构体一共包含8个成员变量,其中与who命令有关的有ut_user保存用户名,ut_line保存设备名, ut_time保存登录时间,ut_host保存用户用于登录的远程计算机名

    如何编写who命令

    流程图

    Created with Raphaël 2.1.0 开始 打开utmp文件 读文件 是否读完 关闭utmp文件 结束 yes no

    示例代码

    #include

    #include

    #include

    #include

    #include

    #include

    #define SHOWHOST

    void showtime(long );

    void show_info(struct utmp *);

    int main(int argc, char *argv[ ])

    {

    if(argc == 3)

    struct utmp utbuf;

    int utmpfd;

    if( (utmpfd = open(UTMP_FILE,O_RDONLY)) == -1) {

    perror(UTMP_FILE);

    exit(1);

    }

    while( ( read(utmpfd, &utbuf, sizeof(utbuf)) ) == sizeof(utbuf) ) {

    show_info(&utbuf);

    }

    close(utmpfd);

    return 0;

    }

    void show_info(struct utmp *utbufp)

    {

    if( utbufp->ut_type != USER_PROCESS) {

    return;

    }

    printf("%-8.8s",utbufp->ut_name); //用户名

    printf(" ");

    printf("%-8.8s", utbufp->ut_line); //设备名

    printf(" ");

    showtime(utbufp->ut_time); //登录时间

    #ifdef SHOWHOST

    if(utbufp->ut_host[0] != '\0') {

    printf("(%s)",utbufp->ut_host); //用户的主机名

    }

    #endif

    printf("\n");

    }

    void showtime(long timeval) //按指定格式显示时间

    {

    char *cp;

    cp = ctime(&timeval);

    printf("%12.12s", cp+4); //对 %12.12s 和 cp+4 有疑惑请参考timeval结构体

    }

    扩展

    who am i 和 whoami

    who am i 和 whoami 是不同的命令

    who am i 命令显示当前用户的信息

    8a08f85ff00c0d8678b51077c4a3ec65.png

    whoami 命令只显示当前用户的用户名

    f5ca169cef088feaad45947c36137da9.png

    (上面的代码不支持 whoami 命令和 who am i命令)

    命令”who am i”可以查看当前有效用户的用户名 ↩

    展开全文
  • Linux who命令详解

    2021-05-17 05:04:32
    who命令常用参数选项含义-H, --heading显示各栏位的标题信息列。-i, -u, --idle显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成 “.” 号,如果该用户已超过 24 小时没有任何动作,则标示出 “old...

    Linux who命令详解教程

    Linux who命令详解

    功能

    显示系统中哪些使用者。

    语法

    who [options]

    参数

    参数

    描述

    options

    who 命令使用的参数。

    who命令常用参数

    选项

    含义

    -H, --heading

    显示各栏位的标题信息列。

    -i, -u, --idle

    显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成 “.” 号,如果该用户已超过 24 小时没有任何动作,则标示出 “old” 字符串。

    -m

    此参数的效果和指定 “am i” 字符串相同。

    -q, --count

    只显示登入系统的帐号名称和总人数。

    -s

    此参数将忽略不予处理,仅负责解决 who 指令其他版本的兼容性问题。

    -w

    显示用户的信息状态栏。

    Linux who命令常用实例

    实例

    实例

    描述

    who

    显示当前使用者。

    who -H

    显示标题栏。

    who -l -H

    显示用户登录来源。

    who -T -H

    显示终端属性。

    who -m -H

    只显示当前用户。

    说明

    使用 who 命令,显示当前使用者。

    显示当前使用者

    语法

    who

    案例

    我们使用 who 命令,显示当前使用者,具体命令如下:

    who

    运行后,终端输出如下:

    75ebb941422f5724010d9fc4e933beef.png

    我们看到,输出了我们当前的使用者信息。

    显示标题栏

    语法

    who -H

    案例

    我们使用 who 命令,显示当前使用者和标题栏信息,具体命令如下:

    who -H

    运行后,终端输出如下:

    84b1e6c9077ade5933db7252c67eba4c.png

    我们看到,输出了标题栏信息。

    显示用户登录来源

    语法

    who -l -H

    案例

    我们使用 who 命令,显示用户登录来源,具体命令如下:

    who -l -H

    运行后,终端输出如下:

    2390fe2b94e894e9c647023fcc414cd0.png

    我们看到,输出了用户的登录来源。

    显示当前用户

    语法

    who -m -H

    案例

    我们使用 who 命令,显示当前用户,具体命令如下:

    who -m -H

    运行后,终端输出如下:

    e0e5e4cbc700d0205a9949834ded4347.png

    我们看到,我们使用了 who 命令,只显示了当前用户信息。

    Linux who命令详解总结

    Linux 中的 who 命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等。

    展开全文
  • who命令实现

    2021-05-09 02:01:07
    可是我去掉ut_name,确又不显示登录的用户名了,现在只能怀疑我找的定义的地方不对,我找到的地方是: vi /usr/include/x86_64-linux-gnu/bits/utmp.h 另外关于printf中 -8.8s存在疑问,一般格式控制中-8.8s,左对齐...

    在阅读unix/linux编程实践教程时阅读到第二章有个疑问,参看如下代码

    #include

    #include

    #include

    #include

    #include

    #include

    void showtime( long );

    void show_info( struct utmp * utbufp );

    int main()

    {

    struct utmp current_record;

    int utmpfd;

    int reclen = sizeof( current_record );

    if ( ( utmpfd = open( UTMP_FILE, O_RDONLY ) ) == -1 ){

    perror( UTMP_FILE );

    exit( 1 );

    }

    while ( read( utmpfd, &current_record, reclen ) == reclen )

    show_info( &current_record );

    close( utmpfd );

    return 0;

    }

    void show_info( struct utmp *utbufp )

    {

    if ( utbufp->ut_type != USER_PROCESS )

    return;

    printf("%-8.8s ", utbufp->ut_name );

    printf("%-8.8s ", utbufp->ut_line );

    showtime( utbufp->ut_time );

    #ifdef SHOWHOST

    if ( utbufp->ut_host[ 0 ] != '\0' )

    printf("(%s)", utbufp->ut_host);

    #endif

    printf("\n");

    }

    void showtime( long timeval )

    {

    char *cp;

    cp = ctime( &timeval );

    printf("%12.12s", cp + 4 );

    }

    前面一些介绍就不管了,在show_info函数中打印了ut_name结构成员,可是我找到该结构体定义的地方发现该结构没有这个成员,这就很奇怪了。

    bV0RvX?w=1316&h=1066

    可是我去掉ut_name,确又不显示登录的用户名了,现在只能怀疑我找的定义的地方不对,我找到的地方是:

    vi /usr/include/x86_64-linux-gnu/bits/utmp.h

    另外关于printf中 -8.8s存在疑问,一般格式控制中-8.8s,左对齐,小数点前8位,小数点之后8位,可是printf对应的却是字符串,这该如何解释?

    展开全文
  • who命令的定义很简单,它是一个命令行实用程序,可打印当前登录用户的列表,它还可以显示当前的运行级别,上次Linux系统引导的时间等。运行who命令的必备基础who命令的基本语法如下:who [OPTION]... [ FILE | ARG1 ...
  • 我们需要了解到一个事实就是,在Linux练习实现系统编程的各个程序时候,...了解whowho命令是显示目前登录系统的用户信息。执行who命令可列出登入帐号,使用的终端机,登入时间以及从何处登入。想写任何命令的程序编...
  • String-原型属性&... *返回一个数组 */String.prototype.toCharArray = function(){ //定义一个数组 var chs ...java实现文件及目录压缩package org.alfresco.repo.bom.util; import java.io...
  • who 列出所有定义过的变量名称 ans 最近的计算结果的变量名 eps MATLAB定义的正的极小值=2.2204e-16 pi π值3.14159265... inf ∞值,无限大 NaN 非数 1.5 MATLAB中的运算符和特殊字符说明符号 符号用途说明 + 加 -...
  • C语言编程实现Linux命令——who实践分析过程who命令是查询当前登录的每个用户,它的输出包括用户名、终端类型、登录日期及远程主机,在Linux系统中输入who命令输出如下:我们先man一下who,在帮助文档里可以看到,...
  • 【单选题】为了使包sos在... ( )【单选题】若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )【单选题】以下()是规范交易主体的有关法律。【单选题】以下选项中,合法的赋值语句是( )【判断题】在 330...
  • Q1: who命令能做些什么?$ whoxxx :0 yyyy-mm-dd hh:mm (:0)xxx pts/0 yyyy-mm-dd hh:mm (:0)这是在CentOS7上的输出结果,who的版本为8.22。每一行代表一个已经登陆的用户,第一列是用户名,第二列是终端名,第三列...
  • 系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作。查看用户的操作系统管理员若想知道某一时刻用户的行为,只需要输入命令W 即可,在SHELL终端中输入如下命令:Default[ROOT@LOCALHOST ROOT] # W2:31...
  • 5W2H指的是什么

    千次阅读 2020-12-24 14:10:13
    3、WHO:由谁来做? 4、WHEN:何时?在什么时间做?什么时机最适宜? 5、WHERE:何地?在什么地方做? 6、HOW:怎么做?怎么提高效率?怎么实施?方法是什么? 7、HOW MUCH:做多少?做到什么程度?数量如何?质量...
  • a moving picture of a train is more dramatic than a still picture of the same subject 5.a person who is subjected to experimental or other observational procedures; someone who is an object of ...
  • I am using Process via ProcessBuilder to run an ... If the application is killed by the system, it's the system who sets the exit code. You can also see this thread for some additional information.
  • 在我们日常Linux服务器运维过程中,监控服务器内存使用情况,多用户登录情况的查看这两者都是经常要做的运维工作。...free命令的基本格式如下:$free [选项]该命令选项如下表:选项含义-b以Byte为单位显...
  • 昨晚有空,把 sybase 系统过程 sp_who , DDL 后分析了一下,全文如下:-- 以下是 DDL 出来的内容:------------------------------------------------------------------------------- DDL for Stored procedure '...
  • 学到的知识点 通过实现who命令,学到了: ...who命令的显示结果含义 第一列表示已登录用户,第二列表示终端名,第三列表示登录时间,第四列表示用户的登录地址。 如何实现who命令 逆向推导 定位文件 who命令
  • who 参数常用参数及含义如下:-H:显示各栏位的标题列。-u:显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成“.”号,如果该用户已超过24小时没有任何动作,则标示出“old”字符串。-q:只显示登入...
  • Thx是什么意思?

    千次阅读 2020-12-21 13:23:31
    你可能会在线上即时聊天、或是电子邮件往来等场景中见到Thx这个表达,它常被人们用做”Thanks”(谢谢)...(多谢对我们的帮助) Huge thx to everyone who supported us! (衷心感谢所有支持过我们的人!) 参考链接:
  • 问题:[单选] C/S是一种重要的网络计算机模式,其含义是:()A . 客户/服务器模式B . 文件/服务器模式C . 分时/共享模式D . 浏览器/服务器模式简答准时采购的基本思想。某机械设备预计使用10年、每年使用220个台班,...
  • ' Its tremendously exciting that there are younger people out there who have subscriptions and look forward to getting these stories once a month. That form. is usually only presented when its forced...
  • 鱼的 a second study showed that men who ate fishat least five times a week a 40 per cent lower risk of developing colorectal cancer compared with men who ate fishless than once a week .第二项研究表明...
  • Who is the Champion

    2021-01-16 09:23:39
    Who is the Champion 题目描述 Soccer is probably the sport with the greatest fans in this country. However, the national team has a poor record on the world stage. In order to energize youth players,...
  • practice是什么意思 还有practice的用法

    千次阅读 2020-12-24 01:34:39
    今天学利斯小编就带大家复习一下practice的含义和用法及常用词组。一、全面理解practice是什么意思实践;实际行动eg: You should combine practice with theory.你应该把理论和实践结合起来。通常的做法;惯例;常规; ...
  • 计算机词汇英语解释

    2021-07-01 00:46:59
    小编为大家整理了计算机词汇英语解释,希望对你有帮助哦!计算机词汇英语解释:Anti-virus software - A program that finds and removes viruses from a computer.Backup - A copy on floppy disk or tape of files ...
  • Lane_英文名Lane是什么意思

    千次阅读 2020-12-28 21:59:58
    原There's a really weird lady I work with who I couldn't tell if she was a man or a woman for a while. It's weird when people like that have gender neutral names. Other than that I do like this name....
  • Dirac是什么意思

    2020-12-20 02:28:53
    Dirac是什么意思 3. This can be done either through Dirac's canonical quantization or Feynman's path integral. 可以做到这一点可以通过狄拉克的典型量化或费曼的路径积分。 4. The foundations of quantum ...
  • L - Who is the Champion

    2021-05-22 13:42:44
    L - Who is the Champion 计蒜客 - 42587 题意: 给出一个N阶矩阵,( i , j ) (i, j)(i,j)处的数字表示这场比赛球队i ii踢进球队j jj多少球。两支球队平局则各加一分,一方获胜则获胜方加三分,负方不加分也不...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,553
精华内容 32,621
关键字:

who的定义是什么