GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux:Alle Symlinks einer bestimmten 'Original'-Datei finden? (umgekehrter 'Leselink')

Mit GNU find , findet dies die Dateien, die fest oder symbolisch mit einer Datei verknüpft sind:

find -L /dir/to/start -samefile /tmp/orig.file

Ich habe keinen Befehl dafür gesehen und es ist keine leichte Aufgabe, da die Zieldatei keine Informationen darüber enthält, welche Quelldateien darauf verweisen.

Dies ist ähnlich wie "harte" Links, aber zumindest befinden sich diese immer im selben Dateisystem, sodass Sie einen find -inode ausführen können sie aufzulisten. Softlinks sind problematischer, da sie Dateisysteme überqueren können.

Ich denke, was Sie tun müssen, ist im Grunde eine ls -al durchzuführen für jede Datei in Ihrer gesamten Hierarchie und verwenden Sie grep um nach -> /path/to/target/file zu suchen .

Hier ist zum Beispiel eine, die ich auf meinem System ausgeführt habe (zur besseren Lesbarkeit formatiert - die letzten beiden Zeilen befinden sich tatsächlich auf einer Zeile in der realen Ausgabe):

pax$ find / -exec ls -ald {} ';' 2>/dev/null | grep '\-> /usr/share/applications'
lrwxrwxrwx 1 pax pax 23 2010-06-12 14:56 /home/pax/applications_usr_share
                                         -> /usr/share/applications

Inspiriert von Gordon Davissons Kommentar. Dies ähnelt einer anderen Antwort, aber ich habe die gewünschten Ergebnisse mit exec erhalten. Ich brauchte etwas, das symbolische Links findet, ohne zu wissen, wo sich die Originaldatei befindet.

find / -type l -exec ls -al {} \; | grep -i "all_or_part_of_original_name"

Linux
  1. Linux Alle Symlinks in Bezug auf ein Verzeichnis finden und entfernen?

  2. Suchen Sie eine Datei mit den Befehlen Suchen und Suchen in Linux

  3. Alle Linux-Befehle zum Komprimieren/Dekomprimieren

  4. Suchen Sie die Datei und wechseln Sie dann in dieses Verzeichnis in Linux

  5. Wie kann ich alle Dateien bearbeiten, die von find in vi in ​​Linux zurückgegeben werden?

Linux-Berechtigungen – So finden Sie Berechtigungen einer Datei

So kehren Sie Zeilen in einer Datei zeichenweise in Linux um

So finden Sie Dateien basierend auf dem Zeitstempel in Linux

So finden Sie die längste(n) Zeile(n) in einer Datei in Linux

So finden Sie alle installierten Schriftarten in Linux

So finden Sie defekte Symlinks in Linux