python登录linux执行命令

fiy 其他 35

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要使用Python登录Linux并执行命令,可以使用paramiko库。Paramiko是一个用于SSH2(Secure Shell Version 2)协议的Python实现,可以实现远程登录、文件传输等功能。

    首先,需要安装paramiko库。可以使用以下命令在命令行中安装:

    “`
    pip install paramiko
    “`

    安装完成后,可以使用以下代码示例登录Linux并执行命令:

    “`python
    import paramiko

    # 创建SSH客户端对象
    client = paramiko.SSHClient()

    # 自动添加远程主机的SSH密钥
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    # 连接远程主机
    client.connect(‘远程主机IP’, port=22, username=’用户名’, password=’密码’)

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

    # 输出命令执行结果
    print(stdout.read().decode())

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

    在代码中,需要替换的部分包括:
    – ‘远程主机IP’:替换为远程主机的IP地址。
    – ‘用户名’:替换为登录远程主机的用户名。
    – ‘密码’:替换为登录远程主机的密码。
    – ‘要执行的命令’:替换为需要在远程主机上执行的命令。

    通过以上代码,可以实现Python登录Linux并执行命令的功能。注意,需要保持远程主机处于打开状态,并且用户名和密码正确才能成功登录和执行命令。

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

    要使用Python登录Linux并执行命令,可以使用`paramiko`模块。`paramiko`是一个用于SSH连接和远程命令执行的Python库。

    这里是使用`paramiko`模块登录Linux并执行命令的步骤:

    1. 安装paramiko模块:在命令行中使用pip安装paramiko模块`pip install paramiko`。

    2. 导入paramiko模块:在Python脚本中导入paramiko模块。

    “`python
    import paramiko
    “`

    3. 创建SSHClient对象:实例化SSHClient对象,并设置自动添加主机密钥。

    “`python
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    “`

    4. 连接到远程服务器:使用SSHClient对象的`connect`方法连接到远程服务器。

    “`python
    ssh.connect(hostname=’服务器IP地址’, port=’端口号’, username=’用户名’, password=’密码’)
    “`

    5. 执行命令:使用SSHClient对象的`exec_command`方法执行命令,并获取命令执行的输出。

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

    # 获取命令执行的输出
    output = stdout.read().decode()
    “`

    6. 关闭连接:使用SSHClient对象的`close`方法关闭SSH连接。

    “`python
    ssh.close()
    “`

    下面是一个完整的示例代码,演示如何使用Python登录Linux并执行命令:

    “`python
    import paramiko

    def execute_command(server_ip, port, username, password, command):
    try:
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    ssh.connect(hostname=server_ip, port=port, username=username, password=password)

    stdin, stdout, stderr = ssh.exec_command(command)
    output = stdout.read().decode()

    ssh.close()
    return output
    except Exception as e:
    print(f”Error: {e}”)
    return None

    # 示例用法
    server_ip = ‘10.0.0.1’
    port = 22
    username = ‘username’
    password = ‘password’
    command = ‘ls -l’

    output = execute_command(server_ip, port, username, password, command)

    if output:
    print(f”Command output: {output}”)
    else:
    print(“Failed to execute command.”)
    “`

    以上就是使用Python登录Linux并执行命令的方法。使用paramiko模块可以轻松实现对远程服务器的操作。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要在Python中登录到Linux系统并执行命令,可以使用paramiko库。Paramiko是一个用于SSH2协议的开源Python实现,在Linux系统中,SSH(Secure Shell)是一个用于安全登录远程计算机和传输文件的协议。

    以下是使用paramiko库登录到Linux并执行命令的步骤:

    1. 安装Paramiko库
    首先,确保已经安装了paramiko库。使用以下命令可以在终端中安装paramiko库:
    “`
    pip install paramiko
    “`

    2. 导入paramiko库
    在Python脚本中,首先要导入paramiko库:
    “`python
    import paramiko
    “`

    3. 建立SSH连接
    接下来,使用paramiko库建立SSH连接:
    “`python
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(hostname, port, username, password)
    “`
    其中,hostname是远程Linux系统的IP地址或域名,port是SSH端口号,默认为22。username是登录用户名,password是登录密码,如果使用密钥认证登录,可以使用`pkey`参数。

    4. 执行命令
    连接成功后,可以使用`exec_command`方法执行命令:
    “`python
    stdin, stdout, stderr = ssh.exec_command(command)
    “`
    其中,command是要执行的命令。

    5. 获取输出
    使用`stdout.readlines()`方法可以读取命令的标准输出:
    “`python
    output = stdout.readlines()
    “`

    6. 关闭连接
    最后,不要忘记关闭SSH连接:
    “`python
    ssh.close()
    “`

    下面是完整的示例代码,展示了如何登录到Linux系统并执行命令:
    “`python
    import paramiko

    def execute_ssh_command(hostname, port, username, password, command):
    try:
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(hostname, port, username, password)

    stdin, stdout, stderr = ssh.exec_command(command)
    output = stdout.readlines()

    ssh.close()

    return output
    except Exception as e:
    print(“An error occurred:”, e)
    return None

    # 示例用法
    hostname = “192.168.1.100”
    port = 22
    username = “your_username”
    password = “your_password”
    command = “ls -l”

    output = execute_ssh_command(hostname, port, username, password, command)
    if output:
    print(“Command output:”)
    for line in output:
    print(line)
    else:
    print(“Failed to execute command.”)
    “`

    以上就是使用paramiko库在Python中登录到Linux系统并执行命令的操作流程。可以根据实际需要进行更多的定制和扩展。

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

400-800-1024

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

分享本页
返回顶部