python连接linux后执行命令

fiy 其他 50

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要在Python中连接到Linux并执行命令,可以使用paramiko模块。paramiko是一个纯Python的SSHv2协议的实现,它可以在Python程序中提供SSH客户端和服务器功能。

    下面是一个示例代码,演示如何连接到Linux并执行命令:

    “`python
    import paramiko

    # 创建SSH客户端
    ssh = paramiko.SSHClient()

    # 添加主机到已知主机列表
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    # 连接到Linux服务器
    ssh.connect(‘服务器IP地址’, username=’用户名’, password=’密码’)

    # 执行命令
    stdin, stdout, stderr = ssh.exec_command(‘要执行的命令’)

    # 获取命令执行结果
    output = stdout.read().decode()
    error = stderr.read().decode()

    if output:
    print(“命令执行结果:”)
    print(output)

    if error:
    print(“命令执行错误:”)
    print(error)

    # 关闭SSH连接
    ssh.close()
    “`

    请替换代码中的服务器IP地址、用户名和密码,以确保能够成功连接。要执行的命令可以替换为您需要执行的实际命令。执行结果将以字符串形式存储在output和error变量中,可以根据需要进行处理。

    这是一个基本的示例,您还可以根据实际需求进行定制和扩展。希望对您有帮助!

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    Python可以使用Paramiko库来连接到Linux系统并执行命令。Paramiko是一个Python库,用于实现SSHv2协议,可以在远程服务器上执行命令、传输文件和管理网络设备。

    下面是使用Paramiko库连接到Linux系统并执行命令的步骤:

    1. 安装Paramiko库:在Python环境下执行以下命令安装Paramiko库。

    “`shell
    pip install paramiko
    “`

    2. 导入Paramiko库:在Python代码中导入Paramiko库,以便使用Paramiko的功能。

    “`python
    import paramiko
    “`

    3. 创建SSH客户端:使用paramiko.SSHClient()函数创建SSH客户端对象。

    “`python
    ssh_client = paramiko.SSHClient()
    “`

    4. 添加主机密钥:如果是第一次连接到该主机,需要添加主机密钥。可以通过将`missing_host_key_policy`属性设置为`paramiko.AutoAddPolicy()`来自动添加新主机密钥。

    “`python
    ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    “`

    5. 连接到远程主机:使用`connect()`方法连接到远程主机。需要指定远程主机的IP地址、用户名和密码。

    “`python
    ssh_client.connect(hostname=”xxx.xxx.xxx.xxx”, username=”username”, password=”password”)
    “`

    6. 执行命令:使用`exec_command()`方法在远程主机上执行命令。该方法返回一个包含执行结果的元组,包括标准输出、标准错误和退出状态。

    “`python
    stdin, stdout, stderr = ssh_client.exec_command(“command”)
    “`

    7. 处理执行结果:根据实际需求处理执行结果,可以使用`stdout.readlines()`方法获取命令的标准输出内容。

    “`python
    output = stdout.readlines()
    for line in output:
    print(line.strip())
    “`

    8. 关闭SSH连接:完成操作后,使用`close()`方法关闭SSH连接。

    “`python
    ssh_client.close()
    “`

    使用上述步骤,可以编写Python代码连接到Linux系统并执行命令。需要注意的是,连接远程主机时需要确保远程主机的SSH服务已启动,并且允许使用密码进行连接。另外,还可以使用密钥(公钥/私钥)进行连接,以增加安全性。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    要在Python中连接到远程Linux服务器并执行命令,可以使用paramiko库来实现。paramiko是一种用于SSH2协议的Python实现,可以用于在Python中远程连接到Linux服务器并执行各种操作。

    下面是一个示例代码,演示了如何使用paramiko连接到远程Linux服务器并执行命令:

    “`python
    import paramiko

    def execute_command(hostname, port, username, password, command):
    # 创建SSH客户端对象
    client = paramiko.SSHClient()
    # 自动添加远程主机的SSH密钥
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    # 连接到远程主机
    client.connect(hostname=hostname, port=port, username=username, password=password)

    try:
    # 执行命令
    stdin, stdout, stderr = client.exec_command(command)
    # 获取命令执行结果
    output = stdout.read().decode(‘utf-8’)
    # 打印输出结果
    print(output)
    except Exception as e:
    # 打印错误信息
    print(“Error:”, e)
    finally:
    # 关闭SSH连接
    client.close()

    # 远程Linux服务器的连接信息
    hostname = ‘your_remote_server’
    port = 22 # 默认SSH端口为22
    username = ‘your_username’
    password = ‘your_password’
    command = ‘your_command_to_execute’

    # 执行命令
    execute_command(hostname, port, username, password, command)
    “`

    以上代码中,首先我们导入了paramiko库。然后,我们定义了一个函数`execute_command`,接受远程Linux服务器的连接信息和要执行的命令作为参数。在函数内部,我们使用paramiko库创建了一个SSH客户端对象,并使用`connect`方法连接到远程主机。然后,我们使用`exec_command`方法执行命令,并使用`stdout`获取命令输出结果。最后,我们打印输出结果,并在`finally`块中关闭SSH连接。

    要使用以上代码,你需要替换`your_remote_server`、`your_username`、`your_password`和`your_command_to_execute`为实际的远程Linux服务器连接信息和要执行的命令。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部