[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Fragen zu Shell-Skripten



Am Mo, 05. Mär 2012 um 19:38:47 +0100 schrieb Peter Schütt:
> %title: Ein beliebiger Titel
> %date: 2001-12-23
> Irgendwelcher Text
> 
> Ich möchte nun in einem Skript den Titel und das Datum weiter verarbeiten 
> können, also in der Weise:
> 
> Wenn eine der Header-Zeilen fehlen sollte, dann muß die Variable leer sein.

TITLE=$(sed -n '0,/^%title:/{s/^%title: *//p}' mysource)

Kann %title oder %date auch in "Irgendwelcher Text" vorkommen? Dann
müsste der Einzeiler noch angepasst werden, um irgendeine Headergrenze
zu erkennen. Angenommen, der Header wird durch den String %header_ende
begrenzt:

TITLE=$(sed -n '0,/^%header_ende/{s/^%title: *//p}' mysource)

> Gegeben ist die Variable
> 
> MYVAR=Ein_Toter_am_Turm
> 
> Wie überführe ich sie nach
> 
> 'Ein Toter am Turm' (also Charakter-Ersetzung) ?

z.B. mit MYVAR=$(echo $MYVAR | tr _ " ") oder statt tr mit sed 's/_/ /g'
Manche Shell kann das auch von sich aus.

> /home/ich/mydir/myfile.dat
> 
> Mittels "basename" komme ich an den einfachen Dateinamen.
> Wie komme ich an das Verzeichnis?

dirname /home/ich/mydir/myfile.dat

Dirk


Reply to: