ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 如何在Linux中使用Shell脚本终止用户会话?

如何在Linux中使用Shell脚本终止用户会话?

原创 Linux操作系统 作者:梦共里醉 时间:2021-11-26 03:34:23 0 删除 编辑
本文介绍如何终止所有用户会话、特定的用户回话。
终止所有用户会话

下面的 将通过获取用户会话的tty值来终止所有用户的活动会话,并使用pkill 将其终止:

[root@localhost ~]# vim kill-user-sessions.sh
#!/bin/bash
usession=$(w | awk '{if (NR!=1) {print $2 }}' | tail -n +2)
for i in $usession
do
  pkill -9 -t $i
done

如何在Linux中使用Shell脚本终止用户会话?如何在Linux中使用Shell脚本终止用户会话?
给 加上可执行权限:

[root@localhost ~]# chmod +x kill-user-sessions.sh

上面脚本使用 w 列出登录系统的用户,使用 awk命令列出行号不等于1的行,并打印第二列,也就是终端名称的哪一行。使用 tail命令列出第2行到末行的内容。
如何在Linux中使用Shell脚本终止用户会话?如何在Linux中使用Shell脚本终止用户会话?

如何终止指定用户的会话?

下面实例中,运行脚本后面加上用户名,就会终止这个用户的登录。

site.qudong.com/2016/0229/304567.shtml

[root@localhost ~]# cat kill-specific-user-sessions.sh 
#!/bin/bash
usession=$(w $1 | awk '{if(NR!=1) {print $2}}'|tail -n +2)
for i in $usession
do
pkill -9 -t $i
done

如何在Linux中使用Shell脚本终止用户会话?如何在Linux中使用Shell脚本终止用户会话?
运行脚本测试:下面列出登录的用户,想终止user01的会话。
如何在Linux中使用Shell脚本终止用户会话?如何在Linux中使用Shell脚本终止用户会话?
那么就运行脚本,后面参数加入用户名:

[root@localhost ~]# ./kill-specific-user-sessions.sh user01

然后使用 w命令查看,user01会话已经被终止了。
如何在Linux中使用Shell脚本终止用户会话?如何在Linux中使用Shell脚本终止用户会话?

总结

本文简要介绍了如何使用Shell脚本终止用户会话。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31524109/viewspace-2844214/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-03-07

  • 博文量
    361
  • 访问量
    180498