#在个应用户第一行加入:/autodbbk/chk_login.sh || exit
#注意权限问题
#read a
TTY=`tty | cut -f3 -d'/'` #取终端号
IP=`who -x| grep "$TTY "|cut -b38-52|cut -f1,2,3 -d'.' ` #取IP前3个字节
N=`who -x | grep "$IP." |cut -f1 -d' '|grep $LOGNAME|wc -l` #取用户数
MAXTERM=`grep "$IP." /autodbbk/term_num.txt|grep $LOGNAME|cut -f3` #取最大用户数
echo "您所在公司最多可以登录$MAXTERM个终端,你是第$N位用户 ! "
TIME=`date '+%Y%m%d-%H:%M:%S'`
#w -x | awk -F ' ' -f /autodbbk/outtime.awk |grep ":"|grep "$IP"
w -x | awk -F ' ' -f /autodbbk/outtime.awk |grep ":"|grep "$IP"
echo "$TIME $LOGNAME $MAXTERM $IP" >>count.log
#注册超时检查
if [ ! "$MAXTERM" ] #检查非授权网络的登录
then echo "Error IP !"
IP=`who -x| grep "$TTY "|cut -b38-52|cut -f1,2,3,4 -d'.' ` #取IP全址
TIME=`date '+%Y%m%d-%H:%M:%S'`
#echo "$TIME $IP $LOGNNAME" >>log
exit 1
fi
if [ $N -gt "$MAXTERM" ] #检查是否超额定注册数
then
echo ""
echo "你公司最多注册$MAXTERM个终端,您现在是第$N个用户,您可以按下面的"
# echo "方法试着登录:"
# echo " 现在应业务中心要求,暂停基层公司登录,如有疑问,请与该部门联系!!"
echo " "
echo " 2002年1月1日"
exit 2
fi
TIME=`date '+%H%M'`
if [ $TIME -lt 0730 -o $TIME -gt 2300 ] #检查是否在许可工作时间
then
echo "\n\n"
echo "各位单位用户:\n"
echo "系统正在进行数据备份、日终、日初操作,约零晨 2:30 以后系统恢复\n"
echo "正常,如有特殊情况需夜间使用系统,请及时通知中心机房系统管理员。\n"
echo "电话 \n\n"
echo " \n"
echo " 2001年6月4日\n"
exit 3
fi
#echo "系统优化,约需10~20分钟,可相对加快速度,请稍等..."
#exit 4
#下面是term_num.txt文本示例
#用户名 网络地址 最大用户数
root 18.129.32. 9
阅读(402) | 评论(0) | 转发(0) |