Heinz W. Pahlke wrote:
ich habe mir ein ganz bloedes Problem eingefangen. Im Laufe der Jahre haben sich auf der Festplatte an die 10 000 Textdateien in einigen Dutzend Verzeichnissen angesammelt. Da viele Dateien thematisch in mehreren Verzeichnissen liegen koennen, habe ich entsprechende Softlinks angelegt.
Bloss - wenn ich jetzt das Verzeichnissystem veraendere, d.h. neue Unterverzeichnisse anlege und Dateien dorthin move, zeige u.U. diverse Links ins Leere.
Wenn ich in den man-pages nichts ueberlesen habe, dann schliessen ln -s und mv sich gegenseitig aus.
Alternative: Hardlinks? Oder gibt es einen besseren Weg? Bei Hardlinks stoert mich vor allem, dass ls nicht erkennen laesst, ob es sich wirklich um eine Datei oder nur einen Link handelt.
Da ich mir nicht vorstellen kann, dass andere dieses Problem nicht auch bereits hatten, gibt es bestimmt auch schon laengst gute Loesungen.
Wenn die Linknamen der Dateien identisch mit den Originaldateien sind, könnte es klappen. Du bräuchtest ein Script, dass dir die toten Links raussucht, die Datei auf die der Link mal zeigte anhand des Namens findet und den Link dann neu erstellt. Das Finden der toten Links ist kein Problem, da habe ich noch ein Script gefunden: #!/bin/sh ### oldlinks - print pathnames of outdated (un-connected) symbolic links ### Usage: oldlinks directory [directories...] # # written by Tom Christiansen # find . -type l -print | perl -nle '-e || print' Das Script muss nun so erweitert werden, dass von den toten Links der Pfad abgeschnitten wird, so dass nur noch der Dateiname übrigbleibt. Nach dem Dateinamen suchst du dann in deiner Verzeichnishierarchie. Wenn gefunden, wird der Link gelöscht und ein neuer, passender angelegt. christian -- Bitte kein CC: bei Antwort an Mailingliste Mail-Etikette: To: cschult@gmx.de, Subject: send etikette Mail-Etikette: http://www.ndh.net/home/schult/etikette.html --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com