python sftp put函数 参数使用实例。window传熟到 Centos
时间: 2023-06-17 16:07:41 浏览: 118
Python使用sftp实现上传和下载功能(实例代码)
Python中可以使用paramiko库实现SFTP协议的文件传输,其中put()函数用于将本地文件上传到远程服务器上,下面是一个使用实例:
```python
import paramiko
# 本地文件路径
local_path = 'C:/Users/username/Desktop/test.txt'
# 远程服务器信息
host = '192.168.0.1'
port = 22
username = 'root'
password = 'password'
remote_path = '/root/test.txt'
# 创建SSH客户端对象
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接远程服务器
ssh.connect(hostname=host, port=port, username=username, password=password)
# 创建SFTP客户端对象
sftp = ssh.open_sftp()
# 上传本地文件到远程服务器
sftp.put(local_path, remote_path)
# 关闭SFTP客户端对象和SSH客户端对象
sftp.close()
ssh.close()
```
其中,local_path为本地文件路径,remote_path为远程服务器上的文件路径。在Windows系统下,本地文件路径需要使用反斜杠(\)作为路径分隔符;而在Linux系统下,文件路径需要使用正斜杠(/)作为路径分隔符。因此,将本地文件从Windows传输到Linux系统下时,需要将路径分隔符进行转换。可以使用replace()函数将路径中的反斜杠替换为正斜杠,例如:
```python
local_path = 'C:/Users/username/Desktop/test.txt'
remote_path = '/root/test.txt'
# 将本地文件路径中的反斜杠替换为正斜杠
local_path = local_path.replace('\\', '/')
```
这样就可以将本地文件上传到远程服务器上了。
阅读全文