2
  • .py を除くスクリプト名と同じフォルダー名 (ABC など) を使用して、あるディレクトリから別のディレクトリに python(たとえば ABC.py) ファイルをコピーするための python スクリプトを作成しています。

  • ローカル システムでは問題なく動作し、同じ名前のフォルダーを作成して、あるディレクトリから別のディレクトリにファイルをコピーします。
  • しかし、実際には、これらのファイルをローカル システム (Windows XP) から、スクリプトを実行する他の国にあるリモート システム (Linux) にコピーしたいと考えています。しかし
    、「宛先パスが見つかりません」というエラーが表示されます。これは、リモートに接続できないことを意味し
    ます。
  • SSH セキュア クライアントを使用しています。
  • IP アドレスとポート番号を使用してリモート サーバーに接続します。
  • 次に、ユーザー ID とパスワードを要求します。

    しかし、Python スクリプトでリモート サーバーに接続できません。

どうすればこれを行うことができますか?

4

2 に答える 2

5

paramikoSFTPClientこれを行うために使用できる を提供します。

import paramiko

source = r'C:\Somedir\somefile.txt'
dest = r'/home/user/file.txt'
hostname = 'linux.server.com'
port = 22 # default port for SSH
username = 'user'
password = 'secret'

try:
    t = paramiko.Transport((hostname, port))
    t.connect(username=username, password=password)
    sftp = paramiko.SFTPClient.from_transport(t)
    sftp.put(source, dest)
finally:
    t.close()
于 2012-10-16T07:23:01.973 に答える