12

2列のデータのリストから一意の重複データを見つけようとしています。本当に列1のデータを比較したいだけです。

データは次のようになります(タブで区切られています)。

What are you doing?     Che cosa stai facendo?
WHAT ARE YOU DOING?     Che diavolo stai facendo?
what are you doing?     Qual è il tuo problema amico?

だから私は次のことで遊んでいます:

  1. 大文字と小文字を区別せずに並べ替えると(「並べ替え」のみ、-fオプションなし)、重複が少なくなります

    gawk'{FS = "\ t"; 印刷$1}'EN-IT_Corpus.txt| 並べ替え | uniq-i-D>重複

  2. 大文字と小文字を区別せずに並べ替えると( "sort -f")、重複が増えます

    gawk'{FS = "\ t"; 印刷$1}'EN-IT_Corpus.txt| 並べ替え-f | uniq-i-D>重複

大文字と小文字を区別せずに重複を検索する場合は、最初に大文字と小文字を無視して並べ替えてから、並べ替えられたデータに基づいて重複を検索するため、#2の方が正確であると考えるのは正しいでしょうか。

私の知る限り、sortには重複を表示するオプションがないため、sortコマンドとuniqueコマンドを組み合わせることができません。

ありがとう、スティーブ

4

3 に答える 3

5

またはこれ:

個性的:

awk '!arr[tolower($1)]++'  inputfile > unique.txt

重複

awk '{arr[tolower($1)]++; next} 
END{for (i in arr {if(arr[i]>1){print i, "count:", arr[i]}} }' inputfile > dup.txt
于 2013-02-23T00:40:18.503 に答える