关闭(一个脚本)一个树莓派和另一个树莓派

时间:2018-10-23 13:07:01

标签: python button ssh raspberry-pi

我目前正在从事一个学校项目。我们需要能够使用一个按钮关闭(也许重启)另一个树莓派上运行的python脚本。

我认为最简单的方法可能就是从其他pi关闭该pi。但是我在这个问题上没有经验。

我不需要确切的指南(我很感谢我能获得的所有帮助),但是有人知道怎么做吗?

2 个答案:

答案 0 :(得分:0)

我想一个简单的方法是首先使python程序通过ssh连接到您可以关闭的pi。您可以在此处查看操作方法:How to make a ssh connection with python?

在这里,您将获得此脚本的改编版本

from pexpect import pxssh
s = pxssh.pxssh()
if not s.login('localhost', 'myusername', 'mypassword'):
    print("SSH session failed on login.")
    print(str(s))
else:
    s.sendline('sudo shutdown -h')
    print("Shutdown command sent")
    s.logout()

然后可以更改它以使其更适合您,或者,如果需要,请添加第二个包含pi密码的s.sendline(),因为您使用的是通常会提示输入密码的sudo。 / p>

如果您想使用按钮来执行它,这是另一个可以帮助您的答案:When press button, python script runs automatically on Raspberry Pi

您可能需要更改那里的图钉号,以使其与您要用于按钮的图钉号匹配。

答案 1 :(得分:0)

首先,我们应该询问您要关闭的PI是否已连接到网络? (局域网或互联网都无所谓)。

如果回答为是,则只需通过SSH连接到PI,然后调用shutdown.sh。

我不知道您为什么想要另一个PI,您可以通过与第一个PI连接到同一网络的任何设备(Wi-Fi或以太网,如果是LAN,或者从任何地方打开,如果它是对Internet开放的)来进行操作。

您可以制作一个智能手机应用程序,或者可以连接到SSH的任何类型或代码(所有这些都可以)。