vine-users ML アーカイブ



[vine-users:070332] Re: 起動時 に自動的に mozilla を立ち上げるには ?

  • From: "SAWAI, Masahiko" <say@xxxxxxxxxxxxxx>
  • Subject: [vine-users:070332] Re: 起動時 に自動的に mozilla を立ち上げるには ?
  • Date: Fri, 4 Feb 2005 22:56:11 +0900 (JST)
澤井@一個人 です.

<20050204113548.740fbf4e.otsubo_p@xxxxxxxxxxxxxxx>の記事において
otsubo_p@xxxxxxxxxxxxxxxさんは書きました。
> .bash_profile から date コマンドを呼び出すとはどういうことですか ?
>ところで、ログイン時刻等を書き出すファイルを用意することは私が windows でやって
>いたことです。windows から linux に乗り換えようとしている私にとって、切角の
>コマンド類も豊富であろう linux ですから、よりスマートに、上記recordファイルを
>用意することなく、プログラムができないかと思いますが、これは linux でも無理
>でしょうかね。

無理かと言われればプログラムが書ければ可能です.
しかしそういう意味では別に MS-Windows でも可能でしょう.

その日最初の login かどうかの判定ならこれでどうでしょうか?
午前4時を境界にしたいという要求の為にずいぶん複雑になって
しまいますが…

リモートログイン等は考えずにX11にグラフィカル login してるという
前提です(コンソールログインなら LOGIN_TTY を変えてください).
やっつけで書いたのでどこかに抜けがあるかもしれません.
############################################################
export LC_ALL=C
LOGIN_TTY=':0'
DAY_START_TIME='04:00'

TODAY_STRING=`date '+%a %b %e' `
NOW_TIME=`date +%H:%M`
LOGIN_COUNT='0'
if [ `expr "$NOW_TIME" '>' "$DAY_START_TIME" ` = '1' ] ; then
	LOGIN_TIME_LIST=`last -R $LOGIN_TTY | grep $USER | grep "$TODAY_STRING" | cut -b 34-38`
else
	YESTERDAY_STRING=`date '+%a %b %e' --date '1 day ago'`
	LOGIN_TIME_LIST=`last -R $LOGIN_TTY | grep $USER | grep "$YESTERDAY_STRING" | cut -b 34-38`
	LOGIN_COUNT=`last -R $LOGIN_TTY | grep $USER | grep "$TODAY_STRING" | wc -l`
fi

for TIME in $LOGIN_TIME_LIST ; do
	if [ `expr "$TIME" '>=' "$DAY_START_TIME" ` = '1' ] ; then
		LOGIN_COUNT=`expr $LOGIN_COUNT + 1`
	fi
done

if [ $LOGIN_COUNT = "1" ] ; then
	echo "First login : $LOGIN_COUNT";
else
	echo "Not First : $LOGIN_COUNT";
fi
############################################################

ただし,私ならこんな面倒なことはせずにその日2回目だろうが
3回目だろうが関係なく番組表を表示させます.
表示されて困るわけじゃないですから.

---
 _/ SAWAI, Masahiko
_/ say@xxxxxxxxxxxxxx