shell에서 문장의 행지정문제
작성자 정보
- 김인중 작성
- 작성일
컨텐츠 정보
- 2,449 조회
- 0 추천
- 목록
본문
.ds .time 00:00:08
2223 f956ffff 6 2 8ad 12 4 2 1
0 30b b6 c 3 3
3 c 4 1 3 1d7 ff 0
1 2 0 1 1 7 18 9
0 0 3 22 d042 13 0
0 1b4 1d 0 1b4 1d 1 14
ffff b6 ffff 0 0 0
ffff ffff ffff 0 0 0
ffff ffff ffff 0 0 0
11125005 3890089 a 2323
.de
.ds .time 00:00:10
292 f436ffff 6 2 8ad 12 4 0 1
5 20f c4 f 3 3
0 6 4 1 9 15a ff 0
1 2 0 1 1 2 15 9
0 0 3 21 d006 2a 0
0 930 372 0 930 372 1 5a
ffff c4 ffff 0 0 0
ffff ffff ffff 0 0 0
ffff ffff ffff 0 0 0
61105004 9890089 0 0
.de
이런 형식의 문장이 실시간으로 쌓이는 파일이 있는데요 각 필드마다 의미가 지정되어 있습니다.
제가 원하는 행의 필드만을 문장 단위로 뽑아 낼려고 하는데요,,
문장의 각 행을 어떻게 지정해야 하나요??
제가 한건
function hex2dec( tmp_num ) {
if (tmp_num=="a") { tmp_num="10" }
if (tmp_num=="b") { tmp_num="11" }
if (tmp_num=="c") { tmp_num="12" }
if (tmp_num=="d") { tmp_num="13" }
if (tmp_num=="e") { tmp_num="14" }
if (tmp_num=="f") { tmp_num="15" }
return tmp_num
}
/.ds/ {
ti=$3
nline1=NR+1
nline2=NR+2
nline3=NR+3
nline5=NR+5
nline10=NR+10
}
NR == nline1 {
if (($1) == "out"){
nline1=nline1+1
nline2=nline2+1
nline3=nline3+1
nline5=nline5+1
nline10=nline10+1
}
else {
mon=$1
bbc=hex2dec( $7 )
bgs=hex2dec( $8 )
stc=hex2dec( $9 )
}
}
NR == nline10 {
slt=hex2dec(substr($1,7,2))
dpp=hex2dec(substr($1,1,1))-1
ttc=hex2dec(substr($2,1,1))
to_num=$4
}
NR == nline5 {
if (($6) =="42") {
printf " LOCATE : BBC:%s/BGS:%s/STC:%s/TO:%s/
" ,bbc,bgs,stc,to_num
}
}
입니다.
그런데 제가 만든건 11번째 행만 이상하게 원하는 문장이 아닌 바로 전 문장의 11번째 행을
출력하네요 (to_num부분)
아시는분 부탁 드립니다.
관련자료
-
이전
-
다음