Python
 Computer >> コンピューター >  >> プログラミング >> Python

SCPまたはSSHを使用してPythonでリモートサーバーにファイルをコピーするにはどうすればよいですか?


sshを介してあるサーバーから別のサーバーにファイルをコピーする最も簡単な方法は、scpコマンドを使用することです。 scpを呼び出すには、サブプロセスモジュールが必要です。

import subprocess
p = subprocess.Popen(["scp", "my_file.txt", "username@server:path"])
sts = os.waitpid(p.pid, 0)

コピーが完了するのを待つには、waitpid呼び出しが必要です。

別の解決策は、ssh接続を開き、scpモジュールを使用することです。

from paramiko import SSHClient
from scp import SCPClient
ssh = SSHClient()
ssh.load_system_host_keys()
ssh.connect('user@server:path')
with SCPClient(ssh.get_transport()) as scp:
    scp.put('my_file.txt', 'my_file.txt') # Copy my_file.txt to the server

  1. Tkinterを使用してハードコピーを印刷する方法は?

    Tkinterを使用すると、開発者はローカルシステム内のファイルを操作できます。この記事では、 filedialogなどのTkinterパッケージを使用してファイルのハードコピーを印刷する方法を説明します。 およびwin32api モジュール。 これらのパッケージをインポートするには、最初にこれらのモジュールを環境にインストールする必要があります。 win32apiをインストールするには、 pip install pywin32を使用します 例 #import the required libraries from tkinter import * from tkinter import

  2. LinuxでSCPを使用してファイルを安全に転送する方法

    Linuxサーバーにアクセスする場合、いくつかのオプションがあります。ユーザーインターフェースを備えたサーバーの場合はVNCを使用できますが、より一般的なオプションは、SecureShellまたはSSHを使用してヘッドレスサーバーにログインすることです。これは暗号化された安全なプロトコルであり、SSHクライアントを介してリモートシステムにアクセスできます。ただし、一部のファイルをサーバーに送信したい場合もあります。そのためには、堅牢なSSHプロトコル上で実行されるSecure Copy(SCP)と呼ばれるプログラムを使用して、ネットワーク経由でリモートシステムにファイルをすばやく転送できます。