Top > calendar - 日記

2014年 11月 の 日記

<< 2014.11 >>
[日記]
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

29
November, 2014Edit

G2+dplusログの整形

/var/log/dplus.log から、時刻、MyCALL UrCALL RPT1 RPT2 を抽出してLISTアップするScript

---- access.sh  ---
#!/bin/bash
export TZ='Asia/Tokyo'
touch /root/up02.txt
touch /root/acs01.txt
while :
do
  tail -1000 /var/log/dplus.log | grep -e "Remote client forward start" -e "User  update" -e "Remote dongle tx start" -A1 > /root/up01.txt
  while read line
  do
    FL1=`echo "$line" | grep -e "Remote client forward start"`
    FL2=`echo "$line" | grep -e "User update"`
    FL3=`echo "$line" | grep -e "rpt2"`
    FL5=`echo "$line" | grep -e "Remote dongle tx start"`

    if test "$FL1" != ""; then
      DTXD=`echo "$line" | cut -d" " -f8- | cut -b1-16`
    fi
    if test "$FL5" != ""; then
      DTXD=`echo "$line" | cut -b57-72`
#     echo "dongle time = $DTXD"
    fi
    if test "$FL2" != "";then
      FL4=`echo "$line" | grep -e "JP1YJQ S"`
      if test "$FL4" = ""; then
        DTXD=`echo "$line" | cut -b39-54`
        MCL0=`echo "$line" | cut -b14-21`
        MCL="$MCL0     "
        RPT1=`echo "$line" | cut -b29-36`
        RPT2="        "
        UCL="        "
      fi
    fi
    if test "$FL3" != ""; then
      RPT2=`echo "$line" | cut -b7-14`
      RPT1=`echo "$line" | cut -b23-30`
      UCL=`echo "$line" | cut -b41-48`
      MCL=`echo "$line" | cut -b59-71`
    fi
    echo "$DTXD $MCL $UCL $RPT1 $RPT2" >> /root/up02.txt
#   echo "$DTXD $MCL $UCL $RPT1 $RPT2"
  done < /root/up01.txt
  sort /root/up02.txt | uniq | tail -100 > /root/acs.txt
  sleep 1
  rm -f /root/up02.txt
  touch /root/up02.txt
  sleep 1
  while read line
  do
    DTEDT=`echo "$line" | cut -b1-16 | sed 's/\//-/g'`
    MSG0=`echo "$line" | cut -b18-`
    DTTEMP=`date +%s --date "$DTEDT"`
    DTJST=`expr $DTTEMP + "46800"`  #13時間分を加える
    DTJST0=`date +"%Y-%m-%d %T" --date "@$DTJST"| cut -b1-16`
    echo "$DTJST0 $MSG0" >> /root/acs01.txt
#   echo "$DTJST0 $MSG0"
  done <acs.txt
  CHK1=`tail -1 /root/acsorg.txt`
  CHK2=`sort /root/acs01.txt | sort | uniq | sed -e '$d'|tail -1`
  if test "$CHK1" != "$CHK2"; then
  sort /root/acs01.txt | sort | uniq | sed -e '$d' >> /root/acsorg.txt
  fi
sort /root/acs01.txt | sort | uniq | sed -e '$d' > /root/acs_jst.txt
sleep 1
rm -f /root/acs01.txt
touch /root/acs01.txt
sleep 1
done

URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White



    ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS