我正在尝试关闭在其他计算机上运行的腻子会话。
问问题
10991 次
1 回答
1
您kill
是用户登录会话的进程 ID:
kill -9 12345
尝试运行w
命令并查看输出。就像是:
w | grep ssh
将显示通过 连接的所有用户ssh
。更多的脚本和自动化可以帮助您缩小登录会话的进程 ID:
pgrep -u w | grep ssh| awk '{print $1}'
ssh
将为您提供一个数字列表,这些数字是PID
登录会话的 s。然后您可以使用它ps
来验证这是您想要的会话kill
。请参阅kill(1)
、ps
和pgrep
手册页。
您可以花哨并制作一个脚本或 shell 别名来打印用户及其 ssh 会话(注意:用于说明的快速破解,不可移植):
for u in `w| grep ssh|awk '{print $1}'`
do
echo -e "\n"$u
pgrep -x -l -u $u ssh
done
...以及该主题的其他变体。如果您经常以这种方式终止会话,那么最好有一个脚本或工具来帮助您在会话之前识别正确的会话kill -9
——尤其是在繁忙的 shell 登录主机上。更有用的是跨平台和/或POSIX
-ish(w
who
ps
等输出格式略有不同)的工具。那种工具可以写perl
,ruby
还是很细心sh
的awk
。
于 2013-06-27T15:00:19.380 回答