Xerophyt
Grünschnabel
Hallo,
ich beginne gerade, mich mit der Shellprogrammierung zu beschäftigen. Einiges habe ich hier im Forum schon gelesen, komme aber jetzt nicht so richtig weiter.
In Tabellen, die in einem oder mehreren Feldern ein Datum enthalten können, ist dieses Datum in der Form
6112005, 5042006, also siebenstellig ohne führende Null beim Tagesdatum<10 und
12012006, ... , also achtstellig wenn Tagesdatum > 9.
In dieser Form können die Daten nicht wie gewollt weiterverarbeitet werden (Excel).
Der unten angegebene Code ergibt als Ausgabe:
06112005
05042006
012012006
Dieser Code setzt in allen Feldern der Tabelle, in denen er eine siebenstellige Zahl findet, eine Null davor (ist mir soweit auch einleuchtend).
Ich möchte aber, dass nur Felder mit genau sieben Zahlen mit einer führenden Null versorgt werden und die 8-stelligen unverändert bleiben.
Kann mir dafür jemand einen Tip geben?
Vielen Dank!
ich beginne gerade, mich mit der Shellprogrammierung zu beschäftigen. Einiges habe ich hier im Forum schon gelesen, komme aber jetzt nicht so richtig weiter.
In Tabellen, die in einem oder mehreren Feldern ein Datum enthalten können, ist dieses Datum in der Form
6112005, 5042006, also siebenstellig ohne führende Null beim Tagesdatum<10 und
12012006, ... , also achtstellig wenn Tagesdatum > 9.
In dieser Form können die Daten nicht wie gewollt weiterverarbeitet werden (Excel).
Der unten angegebene Code ergibt als Ausgabe:
06112005
05042006
012012006
Code:
sed '/\([0-9][0-9][0-9][0-9][0-9][0-9][0-9]\)/ s//'0'\1/g' datei1 > datei2
Dieser Code setzt in allen Feldern der Tabelle, in denen er eine siebenstellige Zahl findet, eine Null davor (ist mir soweit auch einleuchtend).
Ich möchte aber, dass nur Felder mit genau sieben Zahlen mit einer führenden Null versorgt werden und die 8-stelligen unverändert bleiben.
Kann mir dafür jemand einen Tip geben?
Vielen Dank!