python终止当前ssh连接

2024-03-29 06:08:25 发布

您现在位置:Python中文网/ 问答频道 /正文

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

我可以从ssh连接和控制台运行它。在

因为脚本更改了一些IP配置内容,所以我希望在更改IP之前断开ssh的连接—这样一来,ssh就不会挂起,并且会在IP更改之前正确关闭。在

那么-在python中有没有一种方法可以检查脚本是否是从ssh运行的?如果是这样的话要关闭ssh吗?在


Tags: 方法ip脚本机器内容ssh
1条回答
网友
1楼 · 发布于 2024-03-29 06:08:25

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

在控制台上:

$ who am i
hai      ttys000  Dec 23 13:00

在ssh连接上:

^{pr2}$

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

更新

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

相关问题 更多 >