タグ

2015年9月22日のブックマーク (1件)

  • awkで重複行を高速削除する。 - 忘れないようにメモっとく

    awkで重複行を高速削除する。 行の重複削除で調べるとよく出てくるのが、sort & uniqを使ったコマンド。 ソートはファイルが大きくなると、実行にかなり時間がかかってしまいますね。 ソートせずに高速実行できるのが、次のawkコマンド。 awk '!colname[$1]++{print $1}' こういうファイルがあって、一列目の名前を取得したいとき、!colname[$1]は、データをキーにした連想配列で、インクリメントされる。 ボブ りんご | colname["ボブ"] → 0 {print $1} マイケル まんが  | colname["マイケル"] → 0 {print $1} マイケル まんが | colname["マイケル"] → 1 サブロー PC   | colname["サブロー"] → 0 {print $1} サブロー キーボード | colname["サブ

    awkで重複行を高速削除する。 - 忘れないようにメモっとく
    tammer
    tammer 2015/09/22