bashやzshなどのシェルで行の重複を除外したり、重複を見つけるにはuniqコマンド(unique)を使います。
uniqコマンドでは、事前に必ずソートしておく必要があります。
$ cat ids.txt
1
2
3
2
3
4
# 重複の除外
$ cat ids.txt | sort | uniq
1
2
3
4
# sort -u でもOK
$ cat ids.txt | sort -u
1
2
3
4 重複を検出するにはuniq -dを使います。
# 重複の検出
$ cat ids.txt | sort | uniq -d
2
3 ちなみにsortコマンドはデフォルトでは文字としてソートしますが、オプション-nを渡すことによって数値としてソートします。
$ cat ids.txt
1
11
10
101
100
# 文字としてソート
$ cat ids.txt | sort
1
10
100
101
11
# 数値としてソート
$ cat ids.txt | sort -n
1
10
11
100
101
コメントを送る
コメントはブログオーナーのみ閲覧できます