首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何通过Linux终端使用python脚本关闭所有PC(Linux)(都启用了ssh且用户名和密码相同)

要通过Linux终端使用Python脚本关闭所有PC(Linux),可以按照以下步骤进行操作:

  1. 编写Python脚本:创建一个新的文本文件,使用任何文本编辑器,将以下代码粘贴到文件中并保存为shutdown_all.py
代码语言:txt
复制
import paramiko

# 定义要连接的主机列表
hosts = ['host1', 'host2', 'host3']  # 替换为实际的主机名或IP地址

# 定义SSH连接的用户名和密码
username = 'your_username'  # 替换为实际的用户名
password = 'your_password'  # 替换为实际的密码

# 遍历主机列表,连接并执行关机命令
for host in hosts:
    try:
        # 创建SSH客户端对象
        client = paramiko.SSHClient()
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

        # 连接主机
        client.connect(host, username=username, password=password)

        # 执行关机命令
        stdin, stdout, stderr = client.exec_command('sudo shutdown -h now')

        # 打印执行结果
        print(f"关机命令已发送至主机 {host}")
    except Exception as e:
        print(f"无法连接或执行关机命令至主机 {host},错误信息:{str(e)}")
    finally:
        # 关闭SSH连接
        client.close()
  1. 安装paramiko库:在Linux终端中执行以下命令安装paramiko库。
代码语言:txt
复制
pip install paramiko
  1. 运行Python脚本:在Linux终端中执行以下命令运行Python脚本。
代码语言:txt
复制
python shutdown_all.py

脚本将遍历定义的主机列表,使用SSH连接到每个主机,并执行关机命令(sudo shutdown -h now)。如果连接或执行命令失败,将打印相应的错误信息。

请注意,为了使脚本正常工作,需要确保以下条件满足:

  • 所有PC(Linux)已启用SSH,并且可以通过用户名和密码进行身份验证。
  • hosts列表中指定了正确的主机名或IP地址。
  • 在脚本中替换usernamepassword为实际的用户名和密码。

此外,为了确保安全性,建议在实际使用中使用SSH密钥进行身份验证,而不是密码。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券