一、w命令概述
w命令是Linux系统中的一个常用的命令,可以查看当前系统的用户登录情况以及他们的活动情况。w命令在维护和监控系统时非常有用,可以用于检查系统是否被黑客攻击和查看系统的活动情况。
二、w命令基本用法
w命令的基本用法非常简单,只需要在终端输入w即可查看当前登录的用户以及他们的活动情况。
$ w 09:54:07 up 13 days, 11:43, 1 user, load average: 0.23, 0.20, 0.16 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty7 :0 16:09 22:38 19:08 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3
上面的命令输出显示了当前系统中有1个用户登录,这个用户是root用户,在tty7终端登录,登录时间是16:09,当前已经空闲了22分钟,系统CPU使用率比较低,只有0.23。
三、w命令常用参数
w命令有一些常用参数,可以根据需要自己选择使用。
1. -h参数
-h参数表示隐藏掉输出的表头信息,只显示正文内容。
$ w -h root tty7 :0 16:09 22:56 19:08 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3
2. -u参数
-u参数可以指定只显示指定用户的信息。
$ w -u root 09:54:07 up 13 days, 11:43, 1 user, load average: 0.23, 0.20, 0.16 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty7 :0 16:09 22:56 19:08 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3
3. -i参数
-i参数表示忽略掉显示空闲时间超过指定时间的用户。
$ w -i 30 09:54:07 up 13 days, 11:43, 1 user, load average: 0.23, 0.20, 0.16 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty7 :0 16:09 22:56 19:08 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3
4. -f参数
-f参数可以输出更详细的信息,包括登录用户的来源IP地址和登录时间。
$ w -f 09:54:07 up 13 days, 11:43, 1 user, load average: 0.23, 0.20, 0.16 USER TTY LOGIN@ IDLE JCPU PCPU WHAT IP root tty7 16:09m 22:57 19:09 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3 192.168.1.1
5. -s参数
-s参数可以指定输出指定终端的信息。
$ w -s tty7 09:54:07 up 13 days, 11:43, 1 user, load average: 0.23, 0.20, 0.16 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty7 :0 16:09 22:56 19:08 0.08s /usr/lib/gdm3/gdm-x-session --run-script i3
四、wcl命令结合w命令使用
wcl命令是一个查看指定文件中指定行的命令。我们可以结合w命令和wcl命令来查看指定用户在指定时间段内的活动情况。
$ echo "$(w -f | grep <实际IP地址> | awk '{print $2}')|$(w -f | grep <实际IP地址> | awk '{print $4}')|$(w -f | grep <实际IP地址> | awk '{print $5}'| awk -F ":" '{print $1}')"| awk -v from="2019-02-10 00:00:00" -v to="2019-02-11 00:00:00" '{cmd="sudo wcl /var/log/auth.log "$2" "$3" from=\""from"\" to=\""to"\""; system(cmd)}'
上面的命令可以查看指定IP地址的活动情况,其中from和to参数表示要查看的时间范围。
结论
w命令是Linux系统中一个非常有用的工具,可以用于查看系统的用户登录情况和活动情况。在维护和监控系统时,经常会用到w命令。同时,结合wcl命令可以更加灵活地查看指定用户在指定时间段内的活动情况。