Hallo.
Ich habe mich gestern zum ersten Mal mit Symlinks beschäftigt und dabei auf ein Hindernis gestossen. Ich bin grade dabei mir einen Satz bash Skripte zur Verwaltung meiner ogg vorbis Sammlung zusammenzuschustern. Eines dieser Skripte liest eine Reihe von Dateinamen über STDIN ein und liest die vorbiscomment tags aus. Dann legt es eine entsprechende Verzeichnisstruktur an und legt symlinks auf die realen oggfiles an. Das entspricht dann den verschiedenen Sichten wie man sie aus amarok kennt...
Wenn ich jetzt vorbiscomment auf die symlinks loslasse kann ich auch die Tags der Dateien ändern doch anscheinend wird da ein copy-on-write durchgeführt und die realen oggs werden nicht verändert sondern stattdessen eine lokale Kopie erzeugt und diese modifiziert (ein echt nettes Feature aber in diesem Fall nicht was ich will).
Wie kann ich die symlinks so dreferenzieren das ich auf die Ursprungsdateien zugreife? Muß ich da ein readlink(1) zwischenklemmen?
Danke und Gruß, Tobias
[bash] Symlinks dereferenzieren
Hallo,
ich denke die Idee mit dem readlink is schon gar nich schlecht. Ich wuerde dir sowas Empfehlen:
wobei $1 deine Eingabedatei und $TARGET dann die eigentliche Datei ist die du verwendest. Das musst du jetzt noch auf alle Dateien anwenden.
ich denke die Idee mit dem readlink is schon gar nich schlecht. Ich wuerde dir sowas Empfehlen:
Code: Alles auswählen
LINK=`readlink $1`
if [ -z $LINK ]
then
TARGET=$1
else
TARGET=$LINK
fi