Gelegentlich steht man vor dem Problem durch manuelle oder automatisierte File-Löschungen ungültige Symlinks am Linuxsystem zu haben. Diese händisch zu finden und dann einzeln zu löschen ist zeitaufwendig - und unnötig: via Einzeiler und dem find-Tool lassen sich diese bequem löschen.
Hier die einzelnen Befehlsvarianten zum copy/paste…
Aus dem aktuellen Verzeichnis…
find -maxdepth 1 -type l -xtype l -delete
Aus allen Verzeichnissen unterhalb des aktuellen…
find -type l -xtype l -delete
Aus allen Verzeichnissen am ganzen System…
find / -type l -xtype l -delete
Sicherheitshalber - anstelle von Löschen nur Ausgeben…
find -maxdepth 1 -type l -xtype l -printf "%p -X-> %ln"
find -type l -xtype l -printf "%p -X-> %ln"
find / -type l -xtype l -printf "%p -X-> %ln"
Hinweis: dieser Artikel ist ursprünglich auf dem IT-Blog “copy/paste” (www.copypaste.at) erschienen.