Ich bin mit diesem scheinbar einfach zu behebenden Problem verblüfft. Nun, für eine Weile.
Hier ist eine Beispielausgabe der Datei, die ich bearbeiten muss:
$cat file
George Washington
Geneva Convention
123,281,029 USD
342,019,929 EUR
Ich muss die Leerzeichen zwischen "George Washington" und "Genfer Konvention" entfernen, aber nicht die Leerzeichen zwischen "123.281.029 USD" oder "342.019.929 EUR".
Im Wesentlichen ist mein Ziel hier, den Abstand zwischen Wörtern in einer Zeile NUR dann zu entfernen, wenn diese Zeile keine Zahlen enthält.
Ich habe versucht, die Datei über zu bearbeiten grep -v [0-9] $file | sed 's/ //'
, aber das funktioniert nur, wenn ich in eine andere Datei ausgebe. Dies würde jedoch bedeuten, dass alle Zeilen mit Zahlen aus der alten Datei in die neue Datei ausgeschlossen werden, was nicht erforderlich ist.
Ich habe einige ziemlich lächerliche Loops mit grep ausprobiert und sed
aber nichts scheint genau richtig zu funktionieren.
Auch hier ist die Beispielausgabe der Datei:
$cat file
George Washington
Geneva Convention
123,281,029 USD
342,019,929 EUR
Hier ist meine gewünschte Ausgabe:
$cat file
GeorgeWashington
GenevaConvention
123,281,029 USD
342,019,929 EUR