python - 终止当前的ssh连接

时间:2017-01-04 15:38:16

标签: python ssh ip

我在机器上有一个python脚本。

我可以从 ssh连接和机器的控制台运行它。

因为脚本更改了一些IP配置,我想在更改IP之前断开ssh - 这样ssh就不会挂起,并且会在IP更改之前正确关闭。

所以 - 有没有办法在python中检查脚本是否是从ssh运行的?如果是这样关闭ssh?

1 个答案:

答案 0 :(得分:0)

我没有Linux机器,但在Mac上测试过。如果您发出who am i命令并查看IP地址,则表示您正在使用ssh连接。如果没有,你就在控制台。此答案基于以下answer

在控制台上:

$ who am i
hai      ttys000  Dec 23 13:00

在ssh连接上:

$ who am i
hai      ttys001  Jan  4 07:41  (192.168.1.19)

有了这些信息,就需要从Python运行命令并解析输出。

更新

另一种方法是根据此处的answer检查是否存在环境变量SSH_CLIENT或SSH_TTY。