У меня есть файл, который имеет список хостов, и у меня есть другой файл, который имеет список команд. Я пытаюсь выполнить цикл разместить файл и запустить все команды в командном файле с помощью команды paramiko.The в основном проверки параметров, как время безотказной работы, текущий центрального процессора, количество пользователей, зарегистрированных в т.д. это код, который у меня есть:Цитирование через список хостов и команд в Paramiko и сохранение результата в excel с заголовками столбцов
#! /usr/bin/python
import sys
import paramiko
username = "log_me_in"
password = "secret"
# Opens files in read mode
f1 = open(hostfile,"r")
f2 = open(commandfile,"r")
# Creates list based on f1 and f2
devices = f1.readlines()
commands = f2.readlines()
for device in devices:
device = device.rstrip()
for command in commands:
command = command.rstrip()
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(device, username=username, password=password)
stdin, stdout, stderr = ssh.exec_command(command)
output = stdout.read()
data =[]
data.append(output)
ssh.close()
f1.close()
f2.close()
проблема У меня есть после выполнения команд на удаленной машине. Мне нужно, чтобы stdout каждой команды, которая была выполнена, хранилась в листе excel в одной строке для каждого устройства , как это. Я слышал о библиотеках python, таких как xlwt, но искал информацию о том, как это сделать.
было бы приемлем для записи в файл CSV, а затем импортировать его из Excel? Это намного проще (поскольку 'csv' является частью стандартной библиотеки Python) –
@ Ricardo..yes..even, это прекрасно .. вы знаете, как это сделать? – Amistad
Не могли бы вы добавить пример того, как выглядит 'output'? Вам нужно разбить его на компоненты и не знать формат ... –