Frage von asdsads, 84

Wie entferne ich in einer normalen textdatei auf Linux alle leerzeichen?

Antwort
von varlog, 55

Du solltest dir wirklich mal die sed basics antun. Das kann man, wie du auch selbst wahrscheinlich schon gemerkt hast, immer mal gebrauchen.

sed -i 's/ //g' /Pfad/zur/datei

Kommentar von asdsads ,

geht nicht 

Kommentar von varlog ,

"Geht nicht" ist keine Fehlermeldung.

Kommentar von asdsads ,

es wird so angezeigt

dsssssssssssssssssss 

                                            sdadasdasdasdasdas

                                             sdasdasdasdasdsada

asdasdasddddddddasdas

             

Kommentar von varlog ,

Und ich nehme an den whitespace am Anfang der 2. und 3. Zeile möchtest du auch weg haben?

Liegt vermutlich daran, dass das am Anfang der Zeile keine Leerzeichen, sondern tab-character sind.

sed -i 's/[\t ]//g' /Pfad/zur/Datei

Kommentar von asdsads ,

Das hat funktioniert , ich glaube du bist ein genie . Was ist ein 

 tab-character
?

Kommentar von varlog ,

Das was man i.d.R. bekommt, wenn man auf die Tab-Taste (über caps-lock) drückt.

https://de.m.wikipedia.org/wiki/Tabulatortaste

Expertenantwort
von guenterhalt, Community-Experte für Linux, 35

wende meine Antwort zu deiner Frage

Wie schaffe ich es unter Linux ein Textdatei zu verändern?

schöpferisch an und schon sind die Leerzeichen weg.

Replace with (^C to abort):<\n↓>

ändere einfach diese Zeile in

Replace with (^C to abort):<↓>

(also nur Enter )

Kommentar von asdsads ,

was? wo ? wie? ich verstehe nicht was du mir sagen willst .

Kommentar von guenterhalt ,

das sagt doch nur, dass die meine Antwort zu deiner ersten Frage wohl nicht einmal gelesen hast.

Kommentar von asdsads ,

doch habe ich nur ich verstehe nicht was du mi 

Replace with (^C to abort):<↓>
oder

Replace with (^C to abort):<↓>
damit meinst erkläre es einfach bitte

Kommentar von guenterhalt ,

1. kopiere erst einmal die zu manipulierende Datei

2. rufe den Editor joe auf:

joe kopie-der Datei

3. probiere jetzt mal Suchen

<strg><kf>

jetzt kommen die Ausschriften : suche mal nach einem Wort

Antwort
von Linuxhase, 14

Hallo

Wie entferne ich in einer normalen textdatei auf Linux alle leerzeichen?

So z.B.:

sed 's/ //g' /pfad/zur/datei/dateiname.endung

oder:

cat /pfad/zur/datei/dateiname.endung | tr -d ' '

oder, falls es gar keine Leerzeichen sondern Tabs sind:

sed -e 's/[\t]//g' /pfad/zur/datei/dateiname.endung

Dadurch wird es natürlich nur in der Bildschirmausgabe entfernt und muss, wenn es in einer Datei stattfinden soll, durch eine Ausgabeumleitung in eine neue Datei geschrieben werden z.B.:

sed 's/ //g' dateiname.endung > neuedatei.txt

Linuxhase

Kommentar von asdsads ,

kannst du mir den letzten Schritt nochmal erläutern , denn jetzt sind die Tabs weg aber das was ich vorhatte funktioniert immernoch nicht . 

Kommentar von Linuxhase ,

@asdsads

kannst du mir den letzten Schritt nochmal erläutern

Kannst Du bitte mal den Inhalt der Datei zeigen, wenigstens in Ausschnitten damit man nachvollziehen kann was da eventuell nicht läuft?

Linuxhase

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten