Python: как получить вывод команды SSH

Чтобы получить выходные данные команды SSH в Python, вы можете использовать различные методы. Вот несколько подходов:

  1. Библиотека Paramiko:
    Paramiko — это реализация протокола SSHv2 на языке Python. Вы можете использовать его для установки SSH-соединения и выполнения удаленных команд. Вот пример:
import paramiko
# Create SSH client
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# Connect to remote server
ssh.connect('hostname', username='username', password='password')
# Execute command
stdin, stdout, stderr = ssh.exec_command('your_command')
# Get the output
output = stdout.read().decode('utf-8')
# Close the SSH connection
ssh.close()
# Print the output
print(output)
  1. Библиотека Fabric:
    Fabric — это еще одна библиотека Python, которая упрощает SSH-соединения и удаленное выполнение команд. Вы можете установить его с помощью pip install Fabric. Вот пример:
from fabric import Connection
# Create SSH connection
c = Connection('hostname', user='username', connect_kwargs={'password': 'password'})
# Execute command
result = c.run('your_command', hide=True)
# Get the output
output = result.stdout
# Print the output
print(output)
  1. Модуль подпроцесса:
    Вы также можете использовать модуль subprocessдля запуска команд SSH и захвата вывода. Вот пример:
import subprocess
# Execute SSH command and capture output
output = subprocess.check_output(['ssh', 'username@hostname', 'your_command']).decode('utf-8')
# Print the output
print(output)

Это всего лишь несколько способов получить выходные данные команды SSH в Python. Не забудьте заменить 'hostname', 'username', 'password'и 'your_command'на ваш фактический ценности.