scpコマンドでファイルをやり取りする

scpコマンドとは?

scpコマンドとは、sshプロトコルを使用してファイルを転送するコマンド。コマンド一つで、サーバー上の端末からローカルの端末にファイルを送ったり、逆にローカルの端末からサーバー上の端末にファイルを送ることができる。また、サーバー間でファイルを送り合うことも可能である。

scpコマンドの使い方

形式

scp [オプション] コピー元 コピー先

scpコマンドでは、sshコマンドと同じ認証でデータの通信を暗号化するため、オプションはsshコマンドと同じである。

オプション

  • -C : 通信を圧縮する。
  • -i 秘密鍵ファイル : 秘密鍵ファイル(identityファイル)を指定します。初期設定は、SSHバージョン1は、~/.ssh/identity、SSHバージョン2は、~/.ssh/id_rsa と ~/.ssh/id_dsa。
  • -P ポート番号 : ポート番号を指定する。
  • -p : コピー元の更新時間とモードを維持する。
  • -r : ディレクトリ内を再帰的にコピーする。
  • -1 : SSHのプロトコルバージョン1を使用する。
  • -2 : SSHのプロトコルバージョン2を使用する。
  • -4 : IPv4を使用する。
  • -6 : IPv6を使用する。

ローカルの端末からサーバー上の端末(ユーザー名:User、IPアドレス:aaa.bbb.ccc.ddd)のホームディレクトリにsampleというファイルを送る。

  • 秘密鍵ファイルsecret.pemを使ってssh通信する
  • secret.pemsampleはローカル端末上のホームディレクトリにある。
$ scp -i ~/secret.pem sample User@aaa.bbb.ccc.ddd:~/
sample