ネットワークを介して他のコンピューターにファイルを送信する最も簡単で最も用途の広い方法は何ですか?つまり、他の人が現在使用しているコンピュータを意味します。コンピューターでアクティブなセッションが開かれている場合、SSHは機能しないと思います。
これまでのところ、正常に機能するnetcat
を使用しています。しかし、これを行う他の簡単な方法はありますか?私がnetcat
で抱えている問題の1つは、受信者がファイルの終わりを知っている必要があり、ストリームの名前を考え出す必要があることです。
あなたは不必要にあなたの人生を複雑にしています。 scp
を使用します。
ファイルを転送するにはmyfileローカルディレクトリからディレクトリ/ foo/barマシン上otherhostユーザーとしてser、構文は次のとおりです:scp myfile user@otherhost:/foo/bar
。
編集:scp/SSHによる転送は暗号化されていますが、netcatまたはHTTPによる転送は暗号化されていないことに注意してください。したがって、機密ファイルを転送する場合は、常に前者を使用してください。
あなたも試すことができます
python -m SimpleHTTPServer 8180
HTTP経由で実行されたディレクトリ内のファイルを提供します。ブラウザからアクセスできます。
netcat
に満足したら、tar
を導入することでファイル名の問題を回避できます。これにより、一度に複数のファイルを送信したり、ディレクトリを送信したりすることも簡単になります。
送信側での使用:
tar cf - <files> | nc <Host> <port>
そして受信側では:
nc -l <port> | tar x
別の解決策は、rsync
またはscp
を使用することです。
もちろん、ssh
は、別のセッションが開いている場合に機能します。あなたはただすることができます
ssh user@Host cat /path/to/file.tar > localfile.tar
または、ローカルディレクトリにコピーするには:
scp user@Host:/path/to/file.tar .
両方のホストが同じLANにある場合は、 woos を使用できます。
使い方は非常に簡単です。
送信者と受信者がインターネットのどこかにいて、大きなファイルを転送する必要がある場合は、F * EXをインストールする必要があります。 http://fex.belwue.de/index.html