Defekte symbolische Links reparieren

Post Reply
Message
Author
Matthias+Wellmeier

Defekte symbolische Links reparieren

#1 Post by Matthias+Wellmeier »

Von Zeit zu Zeit entdecke ich auf meinem System symbolische Links, die auf eine Datei oder ein Verzeichnis zeigen, welches nicht mehr existiert. Wie kann ich diese Links automatisch ausfindig machen, so dass ich sie manuell reparieren oder löschen kann.

Hat der ls-Befehl eine solche Option, Links zu prüfen ?

Lilo

Re: Defekte symbolische Links reparieren

#2 Post by Lilo »

Hi Matthias,

mit folgender Zeile kannst Du in einem Shell Skript einen Link prüfen:

if [ -e test.ln ] ;then echo link is ok;else echo broken link;fi

Falls der symbolische Link test.ln auf eine existierende Datei verweist, dann wird der 'then'-Zweig abgearbeitet. (-> hier eben Ausgabe von 'link is ok'.)
Existiert die Datei nicht mehr, dann werden die Befehle im 'else'-Zweig ausgeführt, also Ausgabe von 'broken link'.
Achtung: die Leerzeichen sind wichtig!

Das kannst Du jetzt an Deine Bedürfnisse anpassen.

Für mehr Infos kannst Du dir mal die man page des Kommandos 'test' anschauen. (Die eckigen Klammern sind nur eine Abkürzung diese Befehls, man könnte also auch schreiben:
if test -e test.ln; ... ;fi)
Da siehst Du dann auch, daß Die Option -e prüft ob eine Datei existiert.

Viel Spaß beim Reparieren der Links! <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">

Grüße,
Lilo

Matthias Wellmeier

Re: Defekte symbolische Links reparieren

#3 Post by Matthias Wellmeier »

Danke, dass hat mir geholfen.

Post Reply