[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:17139] Re: konの後でfortuneを動作させるには
-
From:Norimasa Matsumoto
-
Date:Sun, 22 Dec 2002 07:36:21 +0900 (JST)
- Subject: [plamo:17139] Re: konの後でfortuneを動作させるには
- From: Norimasa Matsumoto <matsu@xxxxxxxxxxxxx>
- Date: Sun, 22 Dec 2002 07:36:18 +0900 (JST)
松本@netfort です。
_Subject: [plamo:17131] konの後でfortuneを動作させるには
_From: "nori" <ja5ibp@mx81.tiki.ne.jp>
> 河村です。
>
> とても初歩的なことをおたずねします。
>
> 当方、login直後にkonしたいと思い
>
実はかなり高度な質問だったりして。
> if [ $TREM = linux ]; then
> kon
> fi
若干問題はありますが、
if [ "$TERM" = "linux" ]; then
/usr/bin/kon
exit
fi
if [ "$TERM" = "kon" ]; then
[ -f /usr/spool/mail/$LOGNAME ] && echo -e "You have mail.\n"
[ -x /usr/games/bin/fortune ] && /usr/games/bin/fortune
fi
を .bash_login の先頭に追加するというのはどうでしょう。
注意しなければならないのは、login時の "you have mail." 等の
メッセージは loginが、shellを起動する前に表示しています。よっ
て、.bash_login, .bashrc をどういじっても解決しないと思います。
mailスプールをチェックするプログラムを探すか、作るかして、
.bash_login にでも書いておくと良いでしょう。上記例では、
[ -f /usr/spool .... のところがそうです。
kon を起動した後 ps -axf 等で調べれば分かる通り、
1) -bash
2) \_ kon
3) \_ -bash
となっています。1) の bashの .bash_login は、konを実行した、
ところで止まっています。3) bash を exit 等で終了すると、kon が
終了して、1) bash の .bash_login の続きを実行します。kon の画面
で exit一発で logoutしたければ、サンプルの通り kon の後ろに、
exit を書いておくと良いでしょう。
1) の bashも 3) の bashも、 login shell として起動され、
.bash_login, .bashrc が実行されますが、3) bash では、
fortune が実行されません。これは、Plamo 3.0 標準の .bash_loginでは
if [ $SHLVL = 1 ] ; then
if [ -x /usr/games/bin/fortune ]; then
となっているからです。ちなみに 3) bash では、$SHLVL は 2になって
いるはずです。上記サンプルでは、$TERM = kon の時に fortuneを実行
するようにしていますが、 if [ $SHLVL = 1 ]; then と、対になる fi を
外してしまうという乱暴な考え方もあります。
あと、話は外れますが、せっかくkon で実行するのだから、日本語
fortuneなんて、あればいいかも。Plamo の fortuneは、8bit clean
なので、EUCで、データを作成するだけで(とはいえそれがしんどい)
出来上がります。
--
松本 徳真
Norimasa Matsumoto
E-mail: matsu@netfort.gr.jp
- Follow-Ups
-
- [plamo:17140] Re: konの後でfortuneを動作させるには, nori
- References
-
- [plamo:17131] konの後でfortuneを動作させるには, nori
[検索ページ]
[メール一覧]
Plamo ML 公開システム