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 }
タグ一覧