Post

ログを参照する際に重複行をなくしたい

コマンド

# 2番目の要素の先頭10文字が一緒のものを集約 $ cat /var/tmp/XXXX.log | uniq -f2 -w10

2018-05-15 09:40:00 SELECT VARIABLE_NAME, VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME IN ( 'COM_DROP_TRIGGER'... 2018-05-15 09:41:00 SELECT VARIABLE_NAME, VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME IN ( 'COM_DROP_TABLE'... 2018-05-16 00:47:23 DROP TABLE IF EXISTS `XXXXXXX1` 2018-05-16 00:47:23 DROP TABLE IF EXISTS `XXXXXXX2` 2018-05-16 00:47:24 DROP TABLE IF EXISTS `XXXXXXX3`

SELECT VARが集約対象

が対象の場合以下のような結果となる。

# 重複削除あり $ cat /var/tmp/XXXX.log | uniq -f2 -w10 | grep DROP | wc -c 21149 # 重複削除なし $ cat /var/tmp/XXXX.log | grep DROP | wc -c 1247993
[【 uniq 】 ソート済みのファイルから重複した行を削除する 日経 xTECH(クロステック)](http://tech.nikkeibp.co.jp/it/article/COLUMN/20060227/230918/)
This post is licensed under CC BY 4.0 by the author.