ユニークなライン印刷

ユニークなライン印刷

sortと組み合わせに加えて、独自の行を印刷するためのより良い解決策がありますかuniq

ベストアンサー1

すべての同じ行のみの順序に関係なく印刷するには、次の手順を実行します。

sort -u

順序に関係なく一意の行だけを印刷するには、次の手順を実行します。

sort | uniq -u

各同じ行を最初の出現順に一度だけ印刷するには:(各行にまだ表示されていない場合は、行を印刷してから、いずれの場合も表示されたカウンタをインクリメントします。)

awk '!seen[$0] {print}
     {++seen[$0]}'

最初に発生した順序で一意の行のみを印刷するには:(各行を に記録し、最初の発生であっても記録しseenますlines

awk '!seen[$0]++ {lines[i++]=$0}
     END {for (i in lines) if (seen[lines[i]]==1) print lines[i]}'

おすすめ記事