RCS Datumsformat per Shellskript anpassen
08. November 2008
Neulich musste ich ein Datum der Form * $Date: 2008/10/28 12:37:51 $ (per RCS erzeugt) aus einer Datei extrahieren und in das von uns gewohnte Format bringen. Dies wurde - unter anderem - wie folgt im Shell-Skript erledigt:
Mittels grep suche ich nach der Stelle in der .c-Datei und reiche das Suchergebnis dann an cut weiter. Hier lege ich das Leerzeichen als Trennzeichen fest und lasse mir dann die 3.Spalte geben. Der Inhalt der 3.Spalte (2008/10/28) wird dann an awk gereicht, wobei als Trennzeichen nun der Slash festgelegt wird. Abschliessend werden die drei extrahierten und positionell angepassten Spalten - mit Punkt als Trennzeichen - ausgegeben. Das Ergebnis (28.10.2008) steht dann in der Variablen vdatum.
#!/bin/bash
...
vdatum=`grep '\$Date' ../src/cost.c | cut -d ' ' -f 3 | awk -F / '{print $3 "." $2 "." $1}'`
...
Mittels grep suche ich nach der Stelle in der .c-Datei und reiche das Suchergebnis dann an cut weiter. Hier lege ich das Leerzeichen als Trennzeichen fest und lasse mir dann die 3.Spalte geben. Der Inhalt der 3.Spalte (2008/10/28) wird dann an awk gereicht, wobei als Trennzeichen nun der Slash festgelegt wird. Abschliessend werden die drei extrahierten und positionell angepassten Spalten - mit Punkt als Trennzeichen - ausgegeben. Das Ergebnis (28.10.2008) steht dann in der Variablen vdatum.
Kommentare, Ideen oder Vorschläge willkommen!
HILFE
Code-Beispiele werden mit den BBCodes [code][/code] dargestellt.
Jedes Tag muss eine Zeile für sich allein haben, d.h der Beispiel-Code
muss wirklich ZWISCHEN den Tags stehen. Beispiel:
Alles was zwischen den beiden Tags [register] und [/register] eingetragen wird, ist nur für registrierte (und eingeloggte) User sichtbar.
[code] ACHTUNG! HIER UMBRUCH WICHTIG. TAG [code] MUSS ALLEIN STEHEN
#include <stdio.h>
int main( void ){
return 0;
} ACHTUNG! HIER UMBRUCH WICHTIG. NACHFOLGENDES TAG [/code] MUSS ALLEIN STEHEN
[/code]Alles was zwischen den beiden Tags [register] und [/register] eingetragen wird, ist nur für registrierte (und eingeloggte) User sichtbar.
Dein Name *
Deine Email
Deine Website
Vorschau