在 Linux Mint 中,我知道我可以使用last
终端命令来查看用户上次登录其计算机的时间。
然而,在我的工作中,我经常遇到这样的员工,他们每天下班时只需按“切换用户”按钮,而不是真正退出他们的个人资料,以关闭内存中的所有任务。这导致了一些内存泄漏的表现。有没有办法精确地解析 如何员工上次登录其工作站,从而确定员工上次是否使用“切换用户”选项返回登录屏幕?据我所知,last
只是告诉我员工在登录屏幕上输入了密码,而不一定告诉我他们的环境是否仍然是之前加载的。
长话短说: 如何判断用户在“切换用户”后是否已登录,而不是实际完全注销?
答案1
“w”(或 who)命令将显示当前登录的用户。例如:
doug@LinuxMint ~ $ w
12:23:36 up 41 min, 2 users, load average: 0.69, 0.24, 0.15
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
doug tty7 :0 11:42 40:54 7.39s 0.07s cinnamon-session
test tty8 :20 12:23 40:54 0.97s 0.04s cinnamon-session
在此示例中,用户“test”已登录,我使用切换用户以“doug”身份登录并运行“w”命令。
如果您只需要用户名,可以使用“users”命令,该命令只会打印用户名:
doug@LinuxMint ~ $ users
doug test
至于他们是如何登录的,可以通过检查SSH_CONNECTION、SSH_CLIENT、REMOTEHOST、DISPLAY、SESSIONNAME等环境变量来查看。