web-dev-qa-db-ja.com

ssh経由でscpするにはどうすればよいですか?

私はLINUXマシン(リモート)とMACマシン(ローカル)を持っています。私たちのシステム管理者は "SSH"メソッドを設定しました。これにより、MACで次のコマンドを使用して、MACからLINUXマシンにSSHで接続できます。

ssh [email protected] -p 12345

これを行うと、自分のLINUXマシンのパスワードを入力するように求められます。そうすると、アクセスできるので、すばらしいです。

私が今やりたいのは、MACマシンからLinuxマシンにscpできることです。これにより、ファイルを転送できます。それ、どうやったら出来るの?私はグーグルで回りましたが、何をすべきかわかりません。

ありがとうございました

7
TheGrapeBeyond

[〜#〜] remote [〜#〜]から[〜#〜] local [〜#〜]にコピーするには:

scp -P 12345 user@server:/path/to/remote/file /path/to/local/file

[〜#〜] local [〜#〜]から[〜#〜] remote [〜#〜]にコピーするには:

scp  -P 12345 /path/to/local/file user@server:/path/to/remote/file

注:scpのポートを指定するスイッチは-P の代わりに -p

ディレクトリ内のすべてのファイルをコピーする場合は、次のようなワイルドカードを使用できます。

scp -P 12345 user@server:/path/to/remote/dir/* /path/to/local/dir/

あるいは

scp -P 12345 user@server:/path/to/remote/dir/*.txt /path/to/local/dir/
11
jesse_b

あなたはこのようなものを使うべきです

scp -P 12345 -p some_file [email protected]:

これにより、リモートサーバー上のホームディレクトリにsome_fileがコピーされます。 :(スペースなし)の直後に代替を配置して、名前またはパスを変更します。引数を交換して、ローカルシステムにコピーします。

-P 12345-p 12345と同等であり、-pフラグはscpに宛先ファイルのタイムスタンプと権限を維持するように指示します。

4
roaima

これを頻繁に行う場合は、ファイルにいくつかの設定を追加することをお勧めします~/.ssh/config

次の行を追加します

Host highlabs
   Hostname gateway.highlabs.co
   User marcus
   Port 12345

次にできます

ssh highlabs

または

scp highlabs:/path/to/file /local/path/to/file

サーバーからコピーする

または

scp /local/path/to/file highlabs:/remote/path/to/file

サーバーにコピーする

キー認証を使用している場合、タブ補完はすべての方法で機能します。たとえば、ssh hi<tab>はWordを終了し、scp highlabs:/et<tab>は、リモートサーバー上のファイルを確認した後、/ etcに展開されます。

3
exussum