WinSCP には、ホスト間で転送するときにファイルの新しいバージョンのみをコピーする優れた機能があります。何らかの理由で、WinSCP 経由でリモート ホストに接続できないため、SSH を使用する必要があります。ターゲット フォルダー内のすべてのファイルを上書きするのではなく、新しいファイルのみを上書きしたいのですが、これは自動的に行われますか?
さらに、プロトコルについてはscp -r [/path/filename][login@ipaddress]:.
、家ファイル名パスのディレクトリですか? 単にドライブですかC
? フルパスを記述できることは知っていますが、ただ興味があります。
答え1
あなたはここで多くの誤った考えを持っていると思います。
まず、Winscp はネイティブの ssh を使用してファイルをコピーします。これは Linux コマンドと何ら変わりませんscp
。winscp が機能しない場合は、scp が機能することはありません。winscp は、基本的な scp クライアントを使用して ssh サーバーに接続し、ファイルをコピーする Windows インターフェイスです。
2つ目... LinuxベースのOSには、「Cドライブ」という概念はありません。ルート(/)とルート下のディレクトリがあります。ルートにはブロックデバイスがマウントされ、ルート下のディレクトリにはさまざまなブロックデバイスがマウントされます。
「scp」の構文は次のとおりです。
scp from_where to_where
送信元と送信先は、次のようなローカルディレクトリで/some/local/directory
も、次のようなリモートディレクトリでもかまいません。[email protected]:/some/remote/directory
ディレクトリを「再帰的に」コピーするだけの手段です-r
。(そのディレクトリとその下にあるすべてのものをコピーします。)
「C ドライブ」のある Windows 環境では、通常、putty の pscp コマンドを使用して、次のようにします。
pscp -r c:\some\directory [email protected]:/some/path/to/where/you/want/it
答え2
新しいコピーで上書きすることを優先する場合は、rsync をお勧めします。
cwRsync は Windows で使用できるバージョンです:http://www.rsync.net/resources/howto/windows_rsync.html