Angenommen, die Wörter sind eines pro Zeile und die Datei ist bereits sortiert:
uniq filename
Wenn die Datei nicht sortiert ist:
sort filename | uniq
Wenn sie nicht einer pro Zeile sind und es Ihnen nichts ausmacht, dass sie einer pro Zeile sind:
tr -s [:space:] \\n < filename | sort | uniq
Das entfernt jedoch nicht die Satzzeichen, also möchten Sie vielleicht:
tr -s [:space:][:punct:] \\n < filename | sort | uniq
Aber das entfernt den Bindestrich von Wörtern mit Bindestrich. "man tr" für weitere Optionen.
ruby -pi.bak -e '$_.split(",").uniq.join(",")' filename
?
Ich gebe zu, dass die beiden Arten von Zitaten hässlich sind.