SFC CNS GUIDE 2004

6.2 scpコマンドを使ったファイルの転送

UNIXで安全にファイルの転送を行うには, scpコマンド (Secure CoPy) を実行します. scpコマンドはSSHによって暗号化された通信を行います. ここではscpコマンドの利用方法について説明します.

6.2.1 リモートホストへのファイルの転送

ローカルホストの `kadai.tex' というファイルを リモートホストccz00.sfc.keio.ac.jpの ユーザt00000tfの `documents' ディレクトリに 転送する例を次に示します.

% ls <ENTER>                                         ← リモートホストのファイルを閲覧
kadai.tex    report.tex 
% scp report.tex t00000tf@ccz00.sfc.keio.ac.jp:documents <ENTER> 
t00000tf@ccz00.sfc.keio.ac.jp's password: _          ← パスワードを入力し<ENTER>を押す
report.tex                  100% |****************************| 32KB 00:01 
% _

ファイルを転送するためにリモートホストへログインする必要があります. パスワードを聞かれるので, t00000tfのパスワードを入力して <ENTER>を押します. パスワードを確認したのちにファイルの転送を開始します.

scp [オプション][転送したいファイル名][転送先のパス]

ローカルホストからリモートホストへファイルを転送するためには, 転送したいファイル名にローカルホストにあるファイルを指定し, 転送先のパスにリモートホストのパスを指定します.

リモートホストを転送先のパスとして指定する場合,次のように記述します.

[ユーザ名]@[ホスト名]:[パス]

例えば,ユーザ名t00000tf,ホスト名ccz00.sfc.keio.ac.jp でディレクトリを`public_html'と指定する場合, `t00000tf@ccz00.sfc.keio.ac.jp:public_html'となります. ディレクトリを省略した場合,ユーザのホームディレクトリを示します.

6.2.2 ローカルホストへのファイルの転送

リモートホストにあるファイルをローカルホストへ転送するには, 転送したいファイル名にリモートホストにあるファイルを, 転送先のパスにローカルホストのパスを指定します.

リモートホスト ccz00.sfc.keio.ac.jp のユーザt00000tfの `public_html' ディレクトリにある `index.html' ファイルをローカルホストの カレントディレクトリに転送する例を次に示します.

% scp t00000tf@ccz00.sfc.keio.ac.jp:public_html/index.html . <ENTER>  ← カレントディレクトリ(.)にファイルを転送 
t00000tf@ccz00.sfc.keio.ac.jp's password: _                           ← パスワードを入力して<ENTER>を押す
index.html                  100% |****************************| 23KB 00:00 
% _

6.2.3 ディレクトリの転送

scpコマンドに-rオプションをつけることによって, ディレクトリを転送することが可能です.

次にリモートホストccz00.sfc.keio.ac.jpのユーザt00000tfの `public_html' ディレクトリを ローカルホストの `web' ディレクトリに転送する例を 示します.

% ls -F <ENTER>              ← ローカルホストに `web' ディレクトリがあることを確認
Applications/    Music/    Pictures/      web/
% scp -r t00000tf@ccz00.sfc.keio.ac.jp:pubilc_html web <ENTER>
t00000tf@ccz00.sfc.keio.ac.jp's password: _  
index.html                  100% |****************************|   23 00:00
classMemo.html              100% |****************************|   66 00:00
home.gif                    100% |****************************| 2035 00:00
research.html               100% |****************************|   23 00:00
% ls -F web <ENTER>
public_html/                 ← `public_html' ディレクトリが転送されている
% _
Valid CSS! Valid HTML 4.01!