Загружайте файлы через SSH с помощью Python

Я пытаюсь создать сценарий, который загружает (или загружает) файлы через ssh, поскольку ftp-порт отключен от брандмауэра. Это мой сценарий:

import os import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('10.170.21.93', username="abhishek", password="@bhishek$") sftp = ssh.open_sftp() localpath = 'abc.txt' remotepath = '/opt/crestelsetup/patchzip' sftp.put(localpath, remotepath) sftp.close() ssh.close() 

Это дает мне «IOError: Failure», может ли кто-нибудь помочь?

2 Solutions collect form web for “Загружайте файлы через SSH с помощью Python”

Вам нужно явно указать удаленный путь:

 import os import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('10.170.21.93', username="abhishek", password="@bhishek$") sftp = ssh.open_sftp() localpath = 'abc.txt' remotepath = '/opt/crestelsetup/patchzip/abc.txt' sftp.put(localpath, remotepath) sftp.close() ssh.close() 

Просто изменил путь назначения, чтобы включить имя файла, а также. Попробуйте изменить.

 remotepath = '/opt/crestelsetup/patchzip' 

в

 remotepath = '/opt/crestelsetup/patchzip/abc.txt' 
  • В Python, как написать строку в файл на удаленной машине?
  • Подпроцесс Python .check_call vs .check_output
  • Опция SSH для таймаута через короткое время? ClientAlive & ConnectTimeout, похоже, не делают то, что мне нужно от них.
  • Почему Pariko зависает, если вы используете его при загрузке модуля?
  • Не удается подключиться к удаленному серверу с помощью Fabric и SSH с помощью ключевого файла
  • Использовать SSH-туннель, чтобы сервер Django считал, что он работает внутри AWS?
  • Рекурсивный каталог скачать с Paramiko?
  • ssh с использованием python без ключей RSA
  • Python - лучший язык программирования в мире.