使用python的ssh写一个将文件上传到服务器指定目录下的方法可以选择上传的文件
可以使用paramiko库来实现将文件上传到服务器的功能。以下是一个示例代码:
import paramiko
def upload_file(hostname, port, username, password, local_file, remote_path):
# 创建SSH客户端
client = paramiko.SSHClient()
# 自动添加主机到已知主机列表
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
client.connect(hostname=hostname, port=port, username=username, password=password)
try:
# 创建SFTP客户端
sftp = client.open_sftp()
# 将本地文件上传到服务器指定路径
sftp.put(local_file, remote_path)
print(f"文件 {local_file} 上传成功!")
except Exception as e:
print(f"文件上传失败:{str(e)}")
finally:
# 关闭SFTP客户端
sftp.close()
# 关闭SSH客户端
client.close()
# 测试
hostname = '服务器地址'
port = 22
username = '用户名'
password = '密码'
local_file = '本地文件路径'
remote_path = '服务器目标路径'
upload_file(hostname, port, username, password, local_file, remote_path)
其中,hostname、port、username和password分别是服务器的地址、端口、用户名和密码。local_file是本地文件的路径,remote_path是服务器上目标路径。在调用upload_file函数时,将这些参数传入即可实现文件上传
原文地址: https://www.cveoy.top/t/topic/ibQj 著作权归作者所有。请勿转载和采集!