RCP(あーるしーぴー)

<機能>
この接続コマンドは、Windows NT コンピュータとリモート シェル デーモンである rshd を実行するシステム間でファイルをコピーします。

<書式>
rcp [-a | -b] [-h] [-r] コピー元 1 コピー元 2 ... コピー元 N コピー先

-a ASCII 転送モードを指定します。
このモードは、発信ファイルのキャリッジ リターン/ライン フィード文字をキャリッジ リターンに変換し、着信ファイルのラインフィード文字をキャリッジ リターン/ラインフィードに変換します。
これは、既定の転送モードです。
-b バイナリ イメージ転送モードを指定します。
キャリッジ リターン/ラインフィード変換は実行されません。
-h Windows NT コンピュータの隠しファイルを転送します。
このオプションなしで rcp コマンド ラインに隠しファイルを指定すると、このコマンドは、ファイルが存在していないのと同じ効果を持ちます。
-r コピー元のすべてのサブディレクトリの内容をコピー先へ再帰的にコピーします。
-r を使用すると、コピー元がディレクトリでない場合でも機能しますが、コピー元およびコピー先は、どちらもディレクトリでなくてはなりません。
ディレクトリでない場合は、再帰的なコピーは行われません。
コピー元およびコピー先 [コンピュータ [.ユーザー]:]ファイル名形式で指定しなければなりません。
[コンピュータ [.ユーザー]:] の部分が省略されると、ホストは、ローカル コンピュータであると見なされます。
[.ユーザー] の部分が省略されると、現在 Windows NT にログオンしているユーザー名が使用されます。
ピリオド ( . ) 区切りを含む完全修飾コンピュータ名が使用される場合、[.ユーザー] が含まれていなければなりません。
さもないと、コンピュータ名の最後の部分は、ユーザー名として処理されます。
複数のコピー元ファイルを指定する場合、コピー先はディレクトリでなければなりません。

<使い方>
ファイル名が、UNIX ではスラッシュ (/) または Windows NT システムでは円記号 (\) で始まっていない場合、現在の作業ディレクトリに対して相対ファイル名であると見なされます。Windows NT 上では、これは、コマンドが発行されたディレクトリになります。リモート システム上では、リモート ユーザーのログオン ディレクトリになります。ピリオド ( . ) は、現在のディレクトリを意味します。リモート コンピュータでワイルドカード文字を使用するには、リモート パスにエスケープ文字 (\、"、または ') を使います。

<注意事項>
rcp コマンドが Windows NT コンピュータから発行されている場合、このコマンドをサードパーティー転送に使用して、rshd を実行する 2 つのコンピュータ間でファイルをコピーすることもできます。
・rshd デーモンは UNIX コンピュータ上で利用できますが、Windows NT 上では利用できません。このため、Windows NT コンピュータは、コマンドを発行するシステムとしてだけ参加できます。
・リモートコンピュータは、rshd を実行するのに加えて、rcp ユーティリティも提供しなければなりません。

<Rcp に関する詳細情報>
リモート特権

rcp コマンドは、パスワードの入力を求めるメッセージを表示しません。現在のユーザー名または指定したユーザー名がリモート コンピュータに存在し、rcp を通じてリモート コマンドを実行できなければなりません。

.rhosts ファイル

.rhosts ファイルには、rsh または rcp を使用してローカル アカウントにアクセスできるリモート システムまたはリモート ユーザーを指定します。これらのコマンドを使用してリモート システムにアクセスするには、.rhosts ファイル (または HOSTS に同等なファイル) がリモート システム上に存在する必要があります。rsh および rcp は、ローカル ユーザー名をリモート システムに送信します。リモート システムは、この名前に加えて IP アドレス (通常はコンピュータ名となります) または要求元システムを使用してアクセスが許されているかどうかを確認します。これらのコマンドを使用してアカウントにアクセスする際に、パスワードを入力する規則はありません。

Windows NT Server ドメインにログオンしている場合、現在のログオン名はローカル コンピュータのキャッシュに入っていないので、プライマリ ドメイン コントローラを使用してこのログオン名を解決できなければなりません。rsh プロトコルの一部にユーザー名が必要なので、ユーザー名を入手できないとコマンドの実行に失敗します。
.rhosts ファイルは、各行が各エントリになっているテキスト ファイルです。エントリは、ローカル コンピュータ名、ローカル ユーザー名、およびそのエントリに関するコメントからなっています。次のように、各エントリはタブまたは空白文字で区切られ、コメントはハッシュ記号 (#) で始まっています。

computer5 marie #This computer is in room 31A
.rhosts ファイルは、リモート コンピュータのユーザーのホーム ディレクトリになければなりません。リモート コンピュータに固有の .rhosts ファイルの実装については、リモート システムのマニュアルを参照してください。
また、コンピュータ名をリモート システムの /ETC/HOSTS ファイルに追加しておいてください。これにより、リモート システムは、Microsoft TCP/IP ユーティリティを使用して、使用しているコンピュータへのリモート要求を認証できるようになります。

コンピュータの指定 (ホスト)

現在のユーザー名以外のユーザー名を使うには、コンピュータ.ユーザー変数を使います。コピー元を使ってコンピュータ ユーザーを指定する場合は、リモート コンピュータの .rhosts ファイルにユーザーに関するエントリが含まれていなければなりません。たとえば次のようになります。

rcp rhino.johnb:file1 buffalo.admin:file2

BUFFALO の .rhosts ファイルには、RHINO の Johnb に関するエントリが含まれていなければなりません。

コンピュータ名をドット区切りのフル ドメイン名として入力する場合は、前述のようにコンピュータ名にユーザー名を付け加えなければなりません。これにより、ドメイン名の最後の要素がユーザー名として解釈されるのを防げます。たとえば次のようになります。

rcp domain-name1.user:johnm domain-name2.user:billr

リモート処理

リモート処理は、ほとんどの UNIX システムで、ユーザーのログオン シェルから実行されるコマンドによって実行されます。ユーザーの .profile または .cshrc はファイル名が解析される前に実行されます。また、エクスポートされるシェル変数を (エスケープ文字または引用符を使って) リモート ファイル名で使用できます。

ファイルのコピー

ディレクトリではない 1 つのファイルに多数のファイルをコピーしようとすると、最後のファイルだけがコピーされます。また、rcp コマンドではファイルをそのファイル自体にコピーすることはできません。

ローカル ドメインではないドメインを使って Windows NT コンピュータにログオンした場合、プライマリ ドメイン コントローラが利用できなければ、rcp ではローカル ユーザー名を判別できないため、コマンドは実行されません。同じ制限は、rsh にも適用されます。

前へ 戻る  次へ