しらいです。

In article <cgnqvj$5lt$1@newsl.dti.ne.jp>,
Anonymous Buddha <gobtma@yahoo.co.jp> wrote:
>ログイン後にシェルを実行するのと、機能的に相違はない、という事でしょうか?
>.login が読み込まれるか読み込まれないか、位の違いしかない、のでしょうか?
>よそから telnet 等でログインした場合、デフォルトのシェルを何にするか決まって
>いないと困るので、とりあえず決めてある、といった程度でしょうか?

 厳密には login shell と一般の shell とで動作に違いはありま
すが、実用的にはその差異は無視出来る範囲でしかないといったと
ころでしょうか。
 想像するに、例えば、普段は bash 使いなんだけど、ある環境で
login shell が csh になっているので、非 login shell の bash
を使う羽目になってしまった、なんてケースの懸念でしょうか。

 大きな違いがないのでまずは安心して下さい、というのがこれま
での回答の殆んどのようです。それはそれで回答として妥当だと思
います。
 でももしそれで満足出来ないようでしたら、その殆んどない筈の
差異を幾つか示してみましょう。

 多くの shell で de-facto standard となっている仕様としては、
login shell 以外では以下の点が異なります。POSIX で定められて
いるかと思ってましたが今調べたら記載はないみたいです。
        ・起動時に環境変数 HOME の初期化をしない。
        ・組込みコマンド「logout」が失敗する。
        ・終了時に子 process に SIGHUP を送らない。
 あと、細かい点ですが bash に限っては以下の点が異なりますね。
(「logout」が使えないので。)
        ・ignoreeof の振舞いが異なる。


>Lisp のインタープリタ等あるかと思いますが、そういったものもシェルとして使用
>可
>能なのでしょうか?

 そう言えば TAO/ELIS が Lisp interpritor を login shell(?)
に使ってましたね。UNIX じゃなくて Lisp マシンなので当たり前
ですけど。

-- 
                                               しらい たかし