如何在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

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


脚本加上可执行权限:

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

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

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

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

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

[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
news.yesky.com/hotnews/311/109240311.shtml
site.qudong.com/2016/0918/361895.shtml
www.donews.com/news/detail/4/2982630.html

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


运行脚本测试:下面列出登录的用户,想终止user01的会话。

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


那么就运行脚本,后面参数加入用户名:

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

然后使用w命令查看,user01会话已经被终止了。

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

总结

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值