Top > 日記 > 2014-11-29

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


Reload   New Lower page making Unfreeze Diff Copy Rename   Front page List of pages Search Recent changes Backup Referer   Help   RSS of recent changes
Last-modified: Fri, 28 Nov 2014 22:47:01 HADT (3814d)