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]}'