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: