Paramiko, в функции складывать полученные занчения в отдельный файл

Есть файл cisco.txt там лежат 5 айпишников, Paramiko берёт оттуда адреса и коннектиться по ним. И вывод ifconfig складывает в один файл. Как сделать, что бы на каждый айпишник вывод ложился в свой отдельный файл а не в общий как сейчас.

import time
from datetime import datetime
import paramiko

client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
file = open('C:/Users/sk/Desktop/Python3/12/cisco.txt', 'r')
for line in file:
#    timestamps = str(datetime.now())
#    print('Timestamp:', timestamps)
    info = {}
    info['ip'] = line.split(' ')[0]

    # info['hostname'] = line.split(' ')[1]

    def connector():
        ip_log = 'Connecting to IP: ' + info['ip']
        print(ip_log)

        # hostname_log = 'Connecting to IP: ' + info['hostname']
        # print(hostname_log)

        client.connect(info['ip'], username='test', port=22,
                       key_filename='C:/Users/sk/Desktop/test/test')

    try:
        connector()
        stdin, stdout, stderr = client.exec_command('ifconfig')
        data = stdout.read() + stderr.read()
        # time.sleep(1)
        # print(data)

        with open('C:/Users/sk/Desktop/Python3/12/result_cisco.txt', 'wb') as file:
            file.write(data)

    except Exception as e:
        error_log = str(e)
        print('error_log')

file.close()

Ответы (1 шт):

Автор решения: insolor

Можно в cisco.txt в каждой строке после ip добавить название хоста, потом это название включать в имя файла:

import time
from datetime import datetime
import paramiko

client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
file = open('C:/Users/sk/Desktop/Python3/12/cisco.txt', 'r')
for line in file:
#    timestamps = str(datetime.now())
#    print('Timestamp:', timestamps)
    info = {}
    info['ip'], info['hostname'], *_ = line.split()

    ...

    try:
        ...

        with open(f'C:/Users/sk/Desktop/Python3/12/result_cisco_{info["hostname"]}.txt', 'wb') as file:
            file.write(data)

    except Exception as e:
        error_log = str(e)
        print('error_log')

file.close()
→ Ссылка