Paramiko Добавить / изменить определенную строку в файле на удаленном SFTP-сервере - PullRequest
4 голосов
/ 21 июня 2019

Мне нужно добавить строку в файл на удаленном сервере, используя Paramiko.
Я использую следующий код.
Проблема в том, что он добавляет строку внизу файла, и требуется добавить ее посередине в определенной строке.

Любая подсказка / помощь будут чрезвычайно оценены

ftp = ssh_client.open_sftp()
file=ftp.file('file_name', "a", -1)
file.write('appending_line')
file.flush()
ftp.close()

1 Ответ

1 голос
/ 21 июня 2019

Нельзя добавить строку в середине файла даже с локальным файлом, пусть только с удаленным файлом.

Вы должны прочитать / загрузить весь файл (или хотя бы часть, начинающуюся с начала).с изменяемой строкой), измените содержимое по мере необходимости и снова запишите / загрузите весь файл обратно.

Для этого см .:
Редактирование определенной строки в текстовом файле в Python

Вам просто нужно заменить простой open на Paramiko SFTPClient.open (или его .file псевдоним).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...