dd.mm.yyyy --> ddmmyyyy

E

electren

Jungspund
ich krieg noch zu viel... :hilfe2:

Ich hab Daten in Form von dd.mm.yyyy in na Datei - brauch sie aber in der Form ddmmyyyy - also ohne Punkte!!
Jetzt wollt ich anfangen mit cut & paste was zu schreiben....
aber:
1. sind es 5 bis 10 Daten pro Zeile ...und
2. hab ich dann ne Leerzeile.... anstatt Punkt.. ??

Gibt es noch ne andere Möglichkeit die Punkte zu löschen?
Komplettes ersetzen aller Punkte durch "nix" geht nicht...

grüße
 
Einfaches "."-Löschen geht mit:

Code:
sed -ie 's!\.!!g' file

Gruss, Xanti
 
Xanti schrieb:
Einfaches "."-Löschen geht mit:

Code:
sed -ie 's!\.!!g' file

Gruss, Xanti
Sollte nach der Option '-e' bei sed nicht ein Skript kommen?
Ausserdem steht doch da, dass nicht einfach alle Punkte ersetzt werden koennen- oder bezieht sich das darauf, dass electren nur nicht wusste, wie das geht?

Um etwas spezifischer zu sein, und nur Punkte aus Konstrukten dd.mm.yyyy zu loeschen, koennte folgendes gehen:
Code:
sed -i 's/\([0-9][0-9]\)\.\([0-9][0-9]\)\.\([0-9][0-9][0-9][0-9]\)/\1\2\3/g' filename
 
Hast recht rikola, eigentlich nicht alle Punkte..
Aber hat mir trotzdem geholfen...
Hab mir den Bereich wo die Daten stehen ausgeschnittem mit cut und da das von xanti angwendet und danach wieder die 3 Teile zusammengeführt...
Ist natürlich sehr umständlich...

Code:
sed -i 's/\([0-9][0-9]\)\.\([0-9][0-9]\)\.\([0-9][0-9][0-9][0-9]\)/\1\2\3/g' filename
Bei deinem blick ich nich ganz durch...
es sucht sich die Teile wo das Format von nem Datum gegeben ist raus - und löscht da die Punkte??
Das wäre natürlich der Wahn :-)))


EDIT: Bei mir läuft alles nur mit -e - bei -i kommt immer illegale option
 
Zuletzt bearbeitet:
Mein man sed (FreeBSD6.0) besagt

Code:
     -e command
             Append the editing commands specified by the command argument to
             the list of commands.

     -f command_file
             Append the editing commands found in the file command_file to the
             list of commands.  The editing commands should each be listed on
             a separate line.

Ich kann mich dunkel daran erinnern, dass dies unter Linux auch so ist. Aber ich lass mich gerne korrigieren :)

Dein Befehl ist natürlich genauer und besser geeignet. Da die Aufgabenbeschreibung für mich nicht eindeutig genug war, siegte die Faulheit und ich hab erstmal nur was spartanisches hingeworfen. Wenn's nicht ausreicht, kann man immer noch nachbessern ;)

Gruss, Xanti

edit: Ich sehe gerade, dass es mit und ohne -e geht. Ist halt 'ne Angewohnheit, die man nicht ablegt.
 
Zuletzt bearbeitet:
Das funktioniert super!!!!
Vielen Dank..

mit kleinen Schritte schreite ich nun so langsam zum Ziel.. :)) :))
 

Ähnliche Themen

Keine grafische Oberfläche (Debian Installation)

Finde Fehler im Code nicht

Heimserver Konfiguration für Ubuntu Server?!

Festplattenrettung mit ddrescue

Doppelte Dateien löschen.

Zurück
Oben