2013-02-19 20 views
5

Udało mi się użyć polecenia ssh i wydania na zdalnym serwerze. Teraz chcę scp plików z serwera zdalnego, ale to wydaje się po prostu niemożliwe. Jestem całkowicie nowy w Pythonie i Paramiko. Błąd jest odmowa uprawnień w moim katalogu lokalnym z wątków systemu Windows. Pliki powinny pochodzić z komputera Mac. Każdy inny naprawdę naprawdę prosty przykład, którego mogę użyć do scp plików ze zdalnego komputera z systemem Linux do mojego lokalnego komputera z systemem Windows?scp za pomocą paramiko nie działa - ssh działa dobrze

import paramiko 


hostname = '192.xx.1.xx' 
password = 'pop123' 
username = "husbad2" 
port = 22 

mypath='C:\\Users\\handsonexpert\\Documents' 
remotepath='/Users/ihussain/testdir/file3.txt' 


t = paramiko.Transport((hostname, 22)) 
t.connect(username=username, password=password) 
sftp = paramiko.SFTPClient.from_transport(t) 
sftp.put(mypath, remotepath) 
+1

należy używać sftp.get jeśli Twoim celem jest, aby pobierać pliki z 192.168.1.132 do mojasciezka. –

Odpowiedz

8

Aby pobrać pliki ze zdalnego hosta do lokalnego katalogu:

...... 
localpath='C:\\Users\\handsonexpert\\Documents\\file3.txt' 
remotepath='/Users/ihussain/testdir/file3.txt' 
...... 
sftp.get(remotepath, localpath) 
+4

To używa SFTP, nie scp ?? – danodonovan

+0

-bash: błąd składni w pobliżu nieoczekiwanego tokenu 'remotepath, localpath 'jest prawidłowym błędem? – swateek

8

nie używasz scp tutaj, ale SFTP (SFTPClient).

Jeśli używasz scp, może spojrzeć na tego klienta paramiko scp, istnieje przykład, jak go używać here.

bok, z ogólnymi interesami bezpieczeństwa i stylu programowania zrobić nie ciężko kod swoje hasło i poświadczenia użytkownika, a zwłaszcza nigdy publikować je na forum publicznym jak SO. Nie potrzebujemy ich i nie musisz ich publikować.

+0

'SFTP' i' FTP' są różnymi protokołami. – Dikei

Powiązane problemy