Linuxシェルコマンドを使用して、あるコンピューターから別のコンピューターにコピーする方法は?


3

home/remote_computer_user/Desktop/test1.txtリモートオフィスのコンピューター(永続的なURL +オープンポート)から自宅のコンピューター(home/home_computer_user/Downloads/)にファイル()をコピーしたい。

Linuxでシェルコマンドを使用してこれを行うにはどうすればよいですか?

私の現在の考え:

  1. ssh <user>@<computer1address> -p <port> -リモートコンピューターでシェルを表示します
  2. (私は使うべきだと思うscpが、私の場合はどのように正確にいけないのか)

使用すべき正確なコマンドは何ですか?


oreilly.com/linux/command-directory/cmd.csp?path=s/scp <<これはあなたを助ける必要があります
Anarko_Bizounours

これを定期的に行う場合は、rsyncコマンドを調べてください。
TMN

あなたの/パスにいくつかのが欠落しているようです(「/home/remote_computer_user」のように)。
-grawity

ここでrsyncは解決策ではありません。rsyncは2つのディレクトリを同期しますが、安全な方法でファイルをコピーしたいので、scp。この場合にrsyncを使用するのは煩わしいだけで、ファイルをコピーするだけでは非常に厄介です。バックアップ用の場合は、はい、rsyncが最も適切な方法です。データを回復するだけの場合は、scpがトリックを行います。
Anarko_Bizounours

また、自宅のインターネットルーターでNATを作成し、DNSレコードを取得するまで、彼はそれを実行できないと思います。(dyndnsなど)
Anarko_Bizounours

回答:


4

次のようになります。

scp -P <port> user@comp1:Desktop/test1.txt ~/Downloads/

これを自宅のPCで実行します。

これがお役に立てば幸いです。


1

scp動作しますが、使用することもできますrsync

rsync -e 'ssh -p <port>' <user>@<computer1address>:Desktop/test1.txt ~/Downloads/

ほとんどの場合、rsyncのドロップイン置換ですscp。つまり、ほとんどのscpコマンドscprsync、単に置き換えることができ、同じように機能します。あなたの場合にrsync当てはまらない唯一の理由は-p、ポートを指定するオプションがないためです(まあ、それは、rsyncがsshではなく独自のネイティブプロトコルを介して接続する場合にのみ適用されます)。したがって、ポートを含む代替sshコマンドを使用するように指示する必要があります。

sshサーバーが標準ポートを使用している場合、またはポートが設定さ~/.ssh/configれている場合(どちらの場合も、-psshで接続するときにオプションを使用する必要がないことを意味します)、実行するだけです

rsync <user>@<computer1address>:Desktop/test1.txt ~/Downloads/

一般的には、私が好むrsyncscpは、より多くのオプションを持っているので、あなたが多数のファイルを転送している場合ので、rsyncが持っているデータの量を減らし、すでに先のシステム上に存在するものをスキップする感覚を持っています転送されます。


0

FTPまたはSCPがある場合は、それを使用します。より快適です。あなたがsshに制限されている場合(私が多くの組み込みシステムにいるように)

単一ファイルをアップロード:

 ssh login@remotehost -p remoteport "cat >filename" <filename

単一ファイルをダウンロード:

 ssh login@remotehost -p remoteport "cat filename" >filename

ディレクトリをアップロードする

 tar -cf - dirname | ssh login@remotehost -p remoteport "tar -xf -"

ディレクトリをダウンロードする

 ssh login@remotehost -p remoteport "tar -cf - dirname" | tar -xf - 

代わりに、dirname複数のファイル、ディレクトリ、または一致するパターンを指定できます。絶対パスに注意してください。


0

scpの代替として、より馴染みがあり、マルチファイル転送により適しているのはsftpです。私が遭遇したsshのすべてのメジャーバージョンが付属しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.