awk

サンプル

パイプ渡しで加工

シェルの変数をawkに渡す

  • セキュリティ対策の参考にする為、netstatでSYN_RECV状態になっているアクセスの取得と保存を行う。awkでは、各行頭に「年4桁-月2桁-日2桁_時2桁:分2桁」の情報を付加する為に利用。
  • ここではbashを利用しているが、bashで用意した日付情報(文字)は、awkの「-v」オプションでawkのスクリプト利用可能となる。
netstat -an | grep SYN_RECV | \
awk -v date=$(date +%Y-%m-%d_%H:%M) '{print date,$0}' >> SYN_RECV.log

SYN_RECV.logのサンプル

2019-08-18_11:41 tcp        0      0 210.190.7.122:443       107.170.2xx.xxx:59582   SYN_RECV   


スクリプトで実行

ソースを「スクリプト名.awk」などで保存し、データファイルが「テキストデータ.csv」だとすると、以下の様にして実行します。

awk  -f  スクリプト名.awk  テキストデータ.csv


データの無い日付の行を削除してスッキリ

2020-06-13

  • tanjyo.awk
    # 2020-06-13
    # ------------------------------------------------------------------
    # 月日,誕生,命日
    # 1月1日,,
    # 1月2日,日本太郎(1967),
    # 1月3日,,
    # 1月4日,,
    # 1月5日,,
    # 1月6日,,
    # 1月7日,,長岡花子(1987)
    # 1月8日,,
    # 1月9日,,
    # 1月10日,,
    #  ↓↓↓↓
    # 月日,誕生,命日
    # 1月2日,日本太郎(1967),
    # 1月7日,,長岡花子(1987)
     
     
    BEGIN {
      FS=","
    }
     
    $2 != "" || $3 != "" {
      print $0
    }
    


タグ一覧




関連URL

https://dbweb.0258.net/wiki.cgi?page=awk