GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So entfernen Sie doppelte Wörter aus einer Nur-Text-Datei mit dem Linux-Befehl

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.


Linux
  1. So schreiben Sie mit dem Linux-Befehl Text auf ein Bild

  2. Wie entferne ich doppelte Zeilen in einer Textdatei?

  3. 7 Beispiele für Uniq-Befehle unter Linux zum Entfernen doppelter Zeilen aus einer Datei

  4. So teilen Sie ISO oder Datei mit dem Befehl „Split“ in Linux

  5. Wie hängt man eine Datei mit dem Mail-Befehl unter Linux an?

So sperren Sie eine Textdatei in Linux mit dem Befehl flock

So drucken Sie doppelte Zeilen in einer Textdatei unter Linux

So entfernen Sie einen Befehl aus dem Verlauf in Linux

So entfernen Sie Zeilen aus einer Datei mit dem Sed-Befehl

So entfernen Sie (^M) Zeichen aus einer Datei in Linux

So entfernen Sie Leerzeichen aus Dateinamen in Linux