RSH(1C) — NEWS-OS Programmer’s Manual
名称
rsh − リモートシェル
形式
rsh host [ −l username ] [ −n ] command
host [ −l username ] [ −n ] command
解説
rsh コマンドは指定した ホスト に接続し、 指定したコマンドを実行します。 rsh コマンドはその標準入力をリモートコマンドにコピーをし、 リモートコマンドの標準出力をその標準出力へ、 リモートコマンドの標準エラー出力をその標準エラー出力へコピーします。 割り込み、 中止および終了のシグナルはリモートコマンドに伝達されます。 すなわち、 リモートコマンドがそれを行ったとき rsh は正常に終了します。
リモートユーザ名は、 ユーザが −l オプションで異なったリモート名を指定しない限り、 ユーザのローカルユーザ名と同じです。 このリモート名は (rlogin(1C) コマンドと同じ意味で)オリジナルのアカウントと同じでなければなりません。 すなわち、 コマンドにパスワードをつける規定はありません。
もしユーザが command を省略すると、 コマンドを実行する代りに rlogin(1C) コマンド使用して、 リモートホストにログインすることになります。
クォーテーションで囲まれたメタキャラクタがリモートマシン上で 解釈されるのに対し、 クォーテーションで囲まれていないシェルのメタキャラクタは ローカルマシン上で解釈されます。 したがって、 次のコマンド
rsh otherhost cat remotefile >> localfile
は、リモートファイル remotefile をローカルファイル localfile に追加します。 これに対し、
rsh otherhost cat remotefile ”>>”otherremotefile
では、 remotefile を otherremotefile に追加します。
ホスト名は /etc/hosts ファイルの中でつけられます。 各々のホストは 1つの標準名をもちます (ファイルの 中で与えられる最初の名前)。 それは、 多少長いけれども曖昧さはなく、さらに 1つ以上のニックネームを持つこともできます。 ローカルマシンに対して、 ホスト名はディレクトリ /usr/hosts の中のコマンドでもあります。 もし、 ユーザが、 このディレクトリをユーザのサーチパスに入れておけば rsh コマンドは省略することができます。
関連ファイル
/etc/hosts
/usr/hosts/∗
関連事項
バグ
csh(1) を使っていて、 ターミナルから入力を切り離してリダイレクトせずに rsh(1C) をバックグラウンドへ入れた場合、 たとえリモートコマンドによる読みこみがなくてもブロック状態 になってしまいます。 もし、 ユーザが入力の必要がない場合は、 −n オプションを使用して rsh の入力を /dev/null にリダイレクトすべきです。
ユーザは対話形式のコマンド (たとえば rogue(6) や vi(1)) を実行することはできません。 rlogin(1C) を使ってください。
ストップシグナルはローカル rsh プロセスのみを中止します。 これは明らかに間違いです。 しかし、 ここで説明するには複雑すぎる理由から、 解決させることは難しいのです。
NEWS-OSRelease 4.1C