로그인
Sign in
#! /bin/ksh

HOSTNAME=`hostname`

LANG=C
export LANG

case $# in
1)
        d1="$1"
        d2="$1"
        t1="00"
        t2="23"
        ;;
2)
        d1="$1"
        d2="$2"
        t1="00"
        t2="23"
        ;;
3)
        d1="$1"
        d2="$1"
        t1="$2"
        t2="$3"
        ;;
4)
        d1="$1"
        t1="$2"
        d2="$3"
        t2="$4"
        ;;
*)
        echo "인자가 잘못 되었습니다. 인자 잘 기억하시고 다시 넣어주세요."
        echo "Usage) $0 yymmdd {hh} {yymmdd} {hh}"
        echo "ex) 10년 6월 17일 03시부터 09시 조회시 "
        echo "  $0 100617 03 09"
        echo "ex) 10년 6월 17일 03시부터 10년 6월 18일 09시 조회시 "
        echo "  $0 100617 03 100618 09"
        echo "ex) 10년 6월 17일 00시부터 23시 조회시 "
        echo "  $0 100617"
        echo "ex) 10년 6월 17일 00시부터 10년 6월 18일 23시 조회시 "
        echo "  $0 100617 100618"
        exit
        ;;
esac

hostname=$HOSTNAME

awk -v date1="$d1$t1" -v date2="$d2$t2" -v host=$hostname 'NF==2 \
        {
                host=tolower(host);
                if(match($2, /:/))
                {
                                                split($1, datepiece, "/");
                        fdate=sprintf("%2s%2s%2s%2s", substr(datepiece[3], length(datepiece[3])-2, 2), datepiece[1], datepiece[2], substr($2, 1, 2));
                        ##print $0;
                        if(fdate < date1)
                        {
                                ##print fdate "<" date1;
                                next;
                        }
                        if(fdate>=date1 && fdate<=date2)
                        {
                                ##print fdate ">=" date1, "&&", fdate "<=" date2;
                                j++;
                                printf("\n%s", $0);
                                next;
                        }
                        else
                        {
                                printf("\n%s %3.1f %3.1f %3.1f %3.1f-\n", host, data[1]/j, data[2]/j, data[3]/j, data[0]/j);
                                endflag=1;
                                exit(0);
                        }
                        next;
                }
                if(j==0) next;

                i++;
                data[i%4]+=$2;
                printf(" %s", $2);
        }
        END { if(endflag==0) printf("\n%s %3.1f %3.1f %3.1f %3.1f-\n", host, data[1]/j, data[2]/j, data[3]/j, data[0]/j); }' glance_data.log
조회 수 :
327
추천 수 :
3 / 0
등록일 :
2010.06.24
09:45:35 (*.236.3.232)
엮인글 :
http://bestceok.com/xe/index.php?mid=unix_com&document_srl=2833&act=trackback&key=c10
게시글 주소 :
http://bestceok.com/xe/index.php?mid=unix_com&document_srl=2833
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 자주 사용하는 명령어 제비게릴라 2019-06-27 179
172 logrotate 오류시... [1] 하록 2010-12-31 1383
171 parted 명령 [1] 하록 2010-11-04 760
170 중복라인 한줄로 표시... 하록 2010-10-12 455
169 chattr, lsattr 파일 속성 변경 하록 2010-08-20 689
168 리눅스 커널 설정 [5] 하록 2010-08-19 1318
167 ext3 -> ext4로 변환 방법 하록 2010-08-17 414
166 vi에서 한글 깨질때... 하록 2010-08-04 277
165 tar 분할 압축....... 하록 2010-08-03 329
164 subnet [1] 하록 2010-07-22 302
163 Netmask [2] 하록 2010-07-22 304
162 지수 표현 법.. 하록 2010-07-22 375
161 root password 만료시.... 조치 방법 하록 2010-07-16 875
160 리눅스 oom-killer [1] 하록 2010-06-29 1572
» glance Log 체크 하록 2010-06-24 327
158 e2label 방법... 하록 2010-06-11 296
157 리눅스에서 iso 마운트 하기.... 하록 2010-05-31 594
156 어제 날짜 구하기... [1] 하록 2010-05-28 343
155 open ipmi 를 이용한 서버관리 하록 2010-05-10 728
154 NFS에서 실행이나 카피가 안되는 경우 하록 2010-04-20 987
153 ftp 명령어 설명... 하록 2010-04-09 1139