G2toG1移行スクリプト

現在は、urcallに個人コールだった場合は全て、10分間、G1に移行してしまうため、G1からG2に戻るまでに、必ず10以上は経過してしまい、G2で接続できない。
そこで改善策を検討。
【条件付け】

  1. urcall が"J" または"7" で始まる局、尚且つ、RPT1/RPT2がG1レピーター*1であり、RTP2の末尾文字が"G"の場合にG1へ移行する。
  2. dplusのヘッダー例
     "type=XX"のXX桁数により、切り取る位置が異なる。
  3. g2g1_grep.sh
    #!/bin/bash
    
    while :
    do
    FLAG=`/usr/sbin/tcpdump -vv dst host 64.22.115.235 -nXs 1000 -c 1`
    echo "$FLAG"
    TYPE=`echo "$FLAG" | grep -e "type" | cut -b62-67`
    echo "$TYPE"
    date >> log01
    if test $TYPE = "odulei" ; then
    MYCALL=`echo "$FLAG" | grep -e "mycall" | cut -b62-67`
    URCALL=`echo "$FLAG" | grep -e "urcall" | cut -b60-69`
    RPT1=`echo "$FLAG" | grep -e "rpt1=" | cut -b58-65`
    RPT2=`echo "$FLAG" | grep -e "rpt2=" | cut -b56-63`
    fi
    if test $TYPE = "module" ; then
    MYCALL=`echo "$FLAG" | grep -e "mycall" | cut -b63-68`
    URCALL=`echo "$FLAG" | grep -e "urcall" | cut -b61-68`
    RPT1=`echo "$FLAG" | grep -e "rpt1=" | cut -b59-66`
    RPT2=`echo "$FLAG" | grep -e "rpt2=" | cut -b57-64`
    fi
    date; echo "$MYCALL"; echo "$URCALL"; echo "$RPT1"; echo "$RPT2"
    DT=`date`
    echo $DT $MYCALL $URCALL $RPT1 $RPT2 >>trace.log
    H_UR=`echo "$URCALL" | cut -b1`
    C_RPT1=`echo "$RPT1" | cut -b1-6`
    C_RPT2=`echo "$RPT2" | cut -b1-6`
    E_RPT2=`echo "$RPT2" | cut -b8`
    RPT1_G1=`grep $C_RPT1 /root/G1_rpt.txt`
    RPT2_G1=`grep $C_RPT2 /root/G1_rpt.txt`
    if (test $H_UR = "J" || test $H_UR = "7" ) && test $RPT1_G1 != "" && test $RPT2_G1 != "" && test $E_RPT2 != "G"; then
      echo "going to G1"; echo "go to G1" >>trace.log
      ここでG2をストップさせ、G1を起動 15分後 G2に戻る
    fi
    done

*1 JP1YJQ JP1YJXを除く

リロード   新規 下位ページ作成 凍結解除 差分 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS