2003 CNS GUIDE
copyright
 

6.1 scpコマンドを使った転送

UNIX で安全にファイルの転送を行なうには,scpコマンド(Secure CoPy)を実行します. ここではscpコマンドの利用方法について説明します. ファイル転送の仕組みの詳細については[*]を参照してください.

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

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

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

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

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

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

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

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

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

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

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

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

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

6.1.3 ディレクトリの転送

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

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

% ls -F <ENTER>              ← ローカルホストに`web'ディレクトリがあることを確認
Applications/    Music/    Pictures/      web/ 
% scp -r t03000tf@ccz03.sfc.keio.ac.jp:pubilc_html web <ENTER> 
t03000tf@ccz03.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'ディレクトリが転送されている}
% _