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

Re: Darstellung von Hash-Werten



Am 20.10.2012 02:53, schrieb Roland Schuppisser:

Entweder bin ich wahlweise zu müde, zu dumm oder eine Kombination von beidem, um das Konzept von sed vollständig zu verstehen.

Ja. *grins*

Wenn ich den folgenden Befehl im Ordner, in dem sich die Dateien befinde, ausgebe

echo ${PWD##/*/}

dann wird mir der reine Ordnername angezeigt. Wenn ich Deinen Befehl aber entsprechend abändere, erhalte ich eine Fehlermeldung.
> Was mache ich hier falsch?

Du verwendest gleich zwei Zeichen in dem Ausdruck, die von sed als reserviert betrachtet werden.

"Normalerweise" verwendet sed "/" als Trennzeichen. Also z.B.
"s/alt/neu/". Das geht nicht, weil "/" im Pfad vorkommen kann. Deswegen weicht man auf "#" als Trennzeichen aus. Das geht natürlich in dem Moment nicht mehr, wo Du "#" in dem Ausdruck verwenden willst.

Also nimmt man zum Beispiel "_" als Trennzeichen:

sha512sum -b * | sed -e 's_ \*_,_' -e "s_\$_,${PWD##/*/}_"

(In der vorderen Ersetzung wäre es nicht notwendig, das alternative Trennzeichen zu verwenden, ich habe es nur der Optik wegen einheitlich gemacht.)

Gruß
Stefan


Reply to: