Home > コマンド > scpコマンドの使い方

scpコマンドの使い方

サーバとファイルやディレクトリの送受信をする場合にscpコマンドがよく使われます。scpを使用する最大の利点は、通信を暗号化した安全な経路でデータの送受信が可能になることです。また、scpコマンド実行時に使用するポートを指定できるのでセキュリティの厳しいネットワーク環境でも比較的利用しやすいのが特徴です。これらの特徴を持っているscpコマンドの基本的な使い方をまとめてみました。

scpを使った送信

scpを使うとリモート端末へファイルを送ることができます。この時に非常に便利なのが送信先のディレクトを指定してそこに送ることができることです。ただし、ディレクトリが存在しない場合にはエラーとなるのでscpを使っての送る前に確認しておく必要があります。次に示した条件で送信することにします。

  • リモート端末のURL:remote.domein.co.jp
  • 送信するファイル:/tmp/localfile.txt
  • リモート端末のログインユーザ:RemoteUser
  • リモート端末のディレクトリ:/home/RemoteUser/
  • 送信に使用するポート:22

上記条件を踏まえると実行するコマンドは、次のようになります。

scp /tmp/localfile.txt RemoteUser@remote.domein.co.jp:

ターミナルに上記コマンドを入力しEnterをおすと、リモート端末でのログイン時に必要なパスワードを入力する必要があります。scp実行時に使用したログインユーザで通常のログイン時に入力するパスワードを入力すれば、送信が始まります。scp実行時にポートと送信先ディレクトリを明示的に指定しない場合には、デフォルトで上記設定が使用されます。

scp実行時のポートを「10022」に、送信先のディレクトリを「/tmp/」に指定する場合は、以下のように実行します。

scp -P 10022 /tmp/localfile.txt RemoteUser@remote.domein.co.jp:/tmp/

ポートを明示的に指定する場合は、オプションを使用する必要があります。使用するオプションは「-P」でそのあとにポート番号を指定します。

scpを使った受信

scpを使うとリモート端末にあるファイルをローカル端末に転送することができます。転送の場所などは、予め調べておく必要があります。次に示した条件で転送することにします。

  • リモート端末のURL:remote.domein.co.jp
  • 受信するファイル:/tmp/remotefile.txt
  • リモート端末のログインユーザ:RemoteUser
  • リモート端末のディレクトリ:/home/LocalUser/tmp/
  • 受信に使用するポート:10022

上記条件を踏まえると実行するコマンドは、次のようになります。

scp -P 10022 RemoteUser@remote.domein.co.jp:/tmp/remotefile.txt /home/LocalUser/tmp/

オプション「-P」を使ってscp実行時のポートを指定し、受信するファイルの場所も指定しています。

ディレクトリの送信

scpでは、ファイルだけではなく、ディレクトリを送受信することも可能です。実行時に「-r」オプションを付けることで送受信可能となります。例えば、ディレクトリ「LOCAL_DIR」を送ることにすると実行するscpは次のようになります。

scp -r LOCAL_DIR RemoteUser@remote.domein.co.jp:

関連コンテンツ

Home > コマンド > scpコマンドの使い方

検索
管理情報

Return to page top