Subject: Why do I get [some strange error message] when I "rsh host command" ? Date: Thu Mar 18 17:16:55 EST 1993
もしあなたのリモートアカウントが C シェルを使うのなら、リモートホスト はあなたの指定したコマンドを実行するために C シェルを立ちあげます。シェ ルはリモートホスト上のあなたの .cshrc ファイルを読むでしょう。おそらく、 あなたの .cshrc には "stty" や "biff" など、対話的でないシェルには必要 のないコマンドが含まれています。これらのコマンドからの予想外の出力やエ ラーメッセージは、rsh を変なところで失敗させます。
これはその例です。あなたの .cshrc ファイルにこんな記述があるとします。
stty erase ^H biff yするとこんな奇妙なメッセージが発生するでしょう。
% rsh some-machine date stty: : Can't assign requested address Where are you? Tue Oct 1 09:24:45 EST 1991同様に、.cshrc ファイルを読むある "at" や "cron" のジョブが実行されて いるときにも似たようなエラーが発生するかもしれません。
幸運にも、直すのは簡単です。まずおそらくは、あなたの ".cshrc" には対話 的なシェル以外では単に価値がないだけの一連の操作 (例 "set history=N") があります。あなたがすることは、".cshrc" の中でそれらをこの様に取り囲 むことです。
if ( $?prompt ) then operations.... endifすると対話的じゃないシェルの "prompt" はセットされないので、問題となる 操作は対話的なシェルでのみ実行されます。
あなたはまた、いくつかのコマンドを .login ファイルに移したいと思うかも しれません。もしそれらのコマンドが login セッションが始まる時のみに必 要なものなら (新しいメールや読んでいないニュースのチェックなど) .login ファイルに入れた方が良いです。