gpt4 book ai didi

linux - 如何通过 SSHLibrary 编辑远程文件?

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:38 27 4
gpt4 key购买 nike

我需要编辑远程文件。现在,我正在通过 SSH 登录机器。我可以执行命令并返回响应等。

我在修改远程文件时遇到困难。

Source Machine : Windows
Destination : Linux

是不是类似于将文件获取到 Windows 机器并对其进行编辑,然后再次将文件传输到 Linux?或者任何其他更好的方法?

import SSHLibrary
s = SSHLibrary.SSHLibrary()
s.open_connection("10.10.10.10",username, password)
#s.write("sudo vi file_name_along_with_path") it has to force edit the file
# any ftp mechanism would be better

你能帮帮我吗?

最佳答案

尝试使用 python paramiko 和 linux cat 并回显而不是 vi。

import paramiko

host = 'test.example.com'
username='host_user_name'
password='host_password'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=host, username=username, password=password)
stdin, stdout, stderr = ssh.exec_command("cat path_to_file_for_read")
all_lines = ''
for line in stdout.readlines():
all_lines += line
new_line = all_lines + 'add more or edit'
print new_line
stdin, stdout, stderr = ssh.exec_command("echo '{}' >> path_of_file_to_write".format(new_line))
ssh.close()

关于linux - 如何通过 SSHLibrary 编辑远程文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47252339/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com