如何使用shutil模块在Python中将文件复制到远程服务器

2023-03-26 00:00:00 模块 如何使用 中将

在 Python 中,可以使用 paramiko 模块和 shutil 模块一起将文件复制到远程服务器上。下面是一个简单的示例:

import paramiko
import shutil

# 创建 SSH 客户端对象
ssh = paramiko.SSHClient()

# 允许连接不在 known_hosts 文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程服务器
ssh.connect('remote_server_ip', username='remote_user', password='remote_password')

# 将本地文件 'pidancode.txt' 复制到远程服务器上的目录 '/home/remote_user/'
shutil.copy2('pidancode.txt', '/home/remote_user/', follow_symlinks=True)

# 关闭 SSH 连接
ssh.close()

上述代码中,首先创建了一个 paramiko.SSHClient() 对象。接着使用 set_missing_host_key_policy 方法允许连接不在 known_hosts 文件中的主机。然后使用 connect 方法连接到远程服务器,需要传入远程服务器的 IP 地址、用户名和密码。接着使用 shutil.copy2 方法将本地文件 'pidancode.txt' 复制到远程服务器上的目录 '/home/remote_user/',follow_symlinks 参数表示是否跟随符号链接。最后使用 close 方法关闭 SSH 连接。

需要注意的是,在使用 paramiko 模块进行 SSH 连接时,需要提供正确的 IP 地址、用户名和密码。另外,复制文件时需要确保远程服务器的目录存在,并且当前用户有写入权限。

相关文章