Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103682583
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-18 22:49:15

作者:KornLee  
#!/bin/ksh
#这是一个查询用户登录系统总时间的脚本
#
#脚本开始
(($#>0))&&{ echo "Usage:$(basename $0) [Enter]";exit 1; }
read name?"input username:"
if ! grep -q "\<$name\>" /etc/passwd;then
        echo "No Found User:$1!"
        exit
fi
#定义_do函数
function _do {
last $name|sed -n '2,$p'|sed 's/ \(([0-2][0-2]:[0-5][0-9])\)/#\1/g;s/(//g;s/)//g'|cut -f2 -d"#"|\
awk -F: '{sum1+=$1;sum2+=$2};END{print sum1,sum2}'
}
#
#生成小时和分钟的变量
HH=$(_do|cut -f1 -d" ")
MM=$(_do|cut -f2 -d" ")
#
#
#取出小时和分钟
#判断分钟域,如果$MM大于60,那么换算并显示结果
if [[ $MM -gt 60 ]]; then
        ((m1=$MM/60))
 ((m2=$MM%60))
        echo "用户$name登录系统总时间:$((m1+$HH))小时$m2分"
else
        echo "用户$name登录系统总时间:$HH小时$MM分"
fi
#
#
#脚本结束
阅读(369) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~