怎样在Linux中使用Shell脚本终止用户会话,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
终止所有用户会话
下面的shell脚本将通过获取用户会话的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
给脚本加上可执行权限:
[root@localhost ~]# chmod +x kill-user-sessions.sh
上面脚本使用w命令列出登录系统的用户,使用awk命令列出行号不等于1的行,并打印第二列,也就是终端名称的哪一行。使用tail命令列出第2行到末行的内容。
如何终止指定用户的会话?
下面实例中,运行脚本后面加上用户名,就会终止这个用户的登录。
[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
运行脚本测试:下面列出登录的用户,想终止user01的会话。
那么就运行脚本,后面参数加入用户名:
[root@localhost ~]# ./kill-specific-user-sessions.sh user01
然后使用w命令查看,user01会话已经被终止了。
关于怎样在Linux中使用Shell脚本终止用户会话问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。