2012-02-21 8 views
1

WindowsラップトップからUnixボックス(Juniperルーター)にファイルをsftpしようとしています。WindowsからPythonを使用してUnixにsftpを変換する

小さなスクリプトを書きましたが、私はリモートパスが間違っていると言います。私はエラーを取得する

import paramiko 
host = "192.168.1.87" 
port = 22 
transport = paramiko.Transport((host, port)) 
password = "juniper123" 
username = "root" 
transport.connect(username = username, password = password) 
sftp = paramiko.SFTPClient.from_transport(transport) 
filepath = '/balls/test.txt' 
localpath = 'C:\Users\python1\test.txt' 
sftp.put(filepath, localpath) 
sftp.close() 
transport.close() 

:私は、何かここで私は追加するので、窓がnixのディレクトリを翻訳することができます必要がありますが、私はGoogleの:(

上でそれを見つけることができない空想は、スクリプトでは、おそらくそこにある知っています:

WindowsError: [Error 3] The system cannot find the path specified: '/balls/test.txt'

答えて

4
sftp.put(filepath, localpath) 

私はあなたがローカルとリモートのパスを入れ替えてきたと信じてみてください。

sftp.put(localpath, filepath) 

詳細については、the APIを参照してください。

+0

私はばかです。ありがとうございます –

+0

少なくとも一度は起こらなければなりませんか? :) – sarnold

1

リモートホストのルートディレクトリからボールという名前のディレクトリがない場合にも問題が発生することがあります。

+0

があります:)私たちのテストディレクトリです。 –

+0

クール。私は個人的にリグドデモ中に存在しないディレクトリにアップロードしようとしました。おっとっと。 ;) –

関連する問題