単語が 1 行に 1 つずつあり、ファイルが既に並べ替えられていると仮定すると、
uniq filename
ファイルがソートされていない場合:
sort filename | uniq
それらが 1 行に 1 つではなく、1 行に 1 つであってもかまわない場合:
tr -s [:space:] \\n < filename | sort | uniq
ただし、句読点は削除されないため、必要になる場合があります:
tr -s [:space:][:punct:] \\n < filename | sort | uniq
ただし、これにより、ハイフンでつながれた単語からハイフンが削除されます。その他のオプションについては、「man tr」を参照してください。
ruby -pi.bak -e '$_.split(",").uniq.join(",")' filename
?
2 種類の引用が見苦しいことは認めます。