2008年1月24日木曜日

screen bell_msgでバナー表示

screenのbell_msgって、結構色々と利用方法のアイディアが思いつきます。
「新着メールが届いたときbell_msgを鳴らす」の他にも、

「新着メールの確認スクリプトを作って、screenのbindに割り当て、bell_msgで表示」
「長時間JOBの終了をbell_msgで知らせる」

など考えちゃいますぅ。デフォルト5秒間しか表示されないbell_msgですが、screenのlastmsgコマンドで再表示できますから、bell_msgは端末の利用者になにかを知らせるには良い方法です。

さらにbell_msgの表示時間も自由に設定できますから(但し秒単位)、bell_msgだけで凝った"お知らせバナー"だって考えられますねぇ~:-)

やりすぎだとは思いますが、
#!/bin/csh -f

set msg=""
screen -X msgwait 1
screen -X msgminwait 0
foreach n (N e w " " M a i l)
set msg="${msg}${n}"
screen -X bell_msg " $msg"
screen -X bell
sleep 1
end
screen -X msgwait 5
screen -X msgminwait 1
screen -X bell_msg "$msg Comes!"
screen -X bell

これで、"New Mail" のメッセージを一文字ずつ、8秒間かかって表示していきます。それから"New Mail Comes!"と5秒間表示して消えます。ちょっとバナーっぽい表示にはできるんですが、不連続な表示と、CPUの状況で動作がぎこちないぃ~:-<
まあ、ホントに利用しようは思っていませんしぃ、こんなことも出来るのねぇ的サンプルです。もちろんbell_msgでは日本語表示できません。

0 件のコメント: