我需要使用Paramiko将行添加到远程服务器上的文件中。
我正在使用以下代码。
问题在于它将行添加到文件的底部,并且要求将其添加到文件的中间。
任何线索/帮助将不胜感激
ftp = ssh_client.open_sftp()
file=ftp.file('file_name', "a", -1)
file.write('appending_line')
file.flush()
ftp.close()
答案 0 :(得分:1)
即使是本地文件,也不能在文件中间添加一行,只允许远程文件。
您必须读取/下载整个文件(或至少要修改的行开头的部分),根据需要修改内容,然后再次写回/上传整个文件。
为此,请参见:
Editing specific line in text file in Python
您只需要用Paramiko SFTPClient.open
(或别名open
)替换普通的.file
。