Wir wussten bereits, was Symlinks oder symbolische Links oder Softlinks sind und wie man defekte Symlinks findet und löscht von unserem Linux-System. Heute werden wir lernen, wie man Symlinks unter Linux auflistet. Wenn Sie einige Symlinks vor langer Zeit erstellt haben und sie vollständig vergessen, hilft Ihnen dieser schnelle Tipp, die symbolischen Links mit dem Befehl "Suchen" einfach zu finden.
Symlinks unter Linux auflisten
Um alle Symlinks oder symbolischen Links oder Softlinks in einem Linux-System aufzulisten, führen Sie Folgendes aus:
$ sudo find / -type l
Hier,
- / - repräsentiert das gesamte Dateisystem.
- -typ - bezieht sich auf den Dateityp.
- l - verweist auf den Symlink.
Dieser Befehl sucht nach allen verfügbaren symbolischen Links im gesamten Dateisystem. Abhängig von der Größe Ihres Dateisystems wird es eine Weile dauern. Bitte haben Sie etwas Geduld!
Wenn Sie die Symlink-Suche auf ein bestimmtes Verzeichnis beschränken möchten, geben Sie dessen Pfad wie unten gezeigt an.
Der folgende Befehl listet beispielsweise alle Softlinks im aktuellen Verzeichnis auf :
$ find . -type l
Bitte beachten Sie den einzelnen Punkt (.) im obigen Befehl. In Linux wird der einzelne Punkt (.) verwendet, um das aktuelle (vorhandene) Verzeichnis darzustellen. Der doppelte Punkt (..) wird verwendet, um das übergeordnete Verzeichnis darzustellen.
Beispielausgabe:
./snap/multipass/current ./snap/multipass/1597/.config/autostart ./snap/multipass/1597/config/autostart/multipass.gui.autostart.desktop ./snap/multipass/1784/.config/autostart ./snap/multipass/1784/config/autostart/multipass.gui.autostart.desktop ./.local/share/webkitgtk/databases/indexeddb/v0 find: ‘./.dbus’: Permission denied ./.config/spyder-py3/spyder.lock ./Downloads/Tor browser/Browser/.config/ibus/bus ./.mozilla/firefox/htoypxlg.default-1563118799416/lock
Wenn Sie Symlinks in einem anderen Verzeichnis suchen möchten, ersetzen Sie den Punkt (.) durch den Verzeichnispfad.
Wenn Sie eine detaillierte Ausgabe einschließlich Zeitstempel, Dateiberechtigungen, Eigentümer und Gruppe wünschen, verwenden Sie stattdessen den folgenden Befehl:
$ find . -type l -ls
Beispielausgabe:
4458987 0 lrwxrwxrwx 1 sk sk 4 Mar 6 13:58 ./snap/multipass/current -> 1784 11927799 0 lrwxrwxrwx 1 sk sk 19 Mar 5 11:20 ./snap/multipass/1597/.config/autostart -> ../config/autostart 11932200 4 lrwxrwxrwx 1 sk sk 72 Feb 27 15:30 ./snap/multipass/1597/config/autostart/multipass.gui.autostart.desktop -> /snap/multipass/1597/usr/share/multipass/multipass.gui.autostart.desktop 11534358 0 lrwxrwxrwx 1 sk sk 19 Mar 17 11:51 ./snap/multipass/1784/.config/autostart -> ../config/autostart 11666096 4 lrwxrwxrwx 1 sk sk 72 Mar 6 13:58 ./snap/multipass/1784/config/autostart/multipass.gui.autostart.desktop -> /snap/multipass/1784/usr/share/multipass/multipass.gui.autostart.desktop 5246237 0 lrwxrwxrwx 1 sk sk 51 Feb 12 20:14 ./.local/share/webkitgtk/databases/indexeddb/v0 -> /home/sk/.local/share/webkitgtk/databases/indexeddb find: ‘./.dbus’: Permission denied 4459630 0 lrwxrwxrwx 1 sk sk 5 Jan 24 17:39 ./.config/spyder-py3/spyder.lock -> 18461 4340805 0 lrwxrwxrwx 1 sk sk 25 Feb 15 15:21 ./Downloads/Tor\ browser/Browser/.config/ibus/bus -> /home/sk/.config/ibus/bus 4328111 0 lrwxrwxrwx 1 sk sk 20 Mar 17 11:56 ./.mozilla/firefox/htoypxlg.default-1563118799416/lock -> 192.168.225.37:+2642
Symlinks unter Linux auflisten
Wie Sie vielleicht in den obigen Ausgaben bemerkt haben, sucht der find-Befehl nach den symbolischen Links im aktuellen Verzeichnis und seinen Unterverzeichnissen.
Wenn Sie alle symbolischen Links eine Ebene tiefer im aktuellen Verzeichnis auflisten möchten, verwenden Sie maxdepth kennzeichnen wie unten.
$ find . -maxdepth 1 -type l
Eine andere Möglichkeit, die Liste der symbolischen Links im aktuellen Verzeichnis zu finden:
$ find . -type l -printf '%p -> %l\n'
Dadurch werden alle Symlinks im aktuellen Verzeichnis rekursiv aufgelistet. Außerdem zeigt es die tatsächlichen Dateien an, auf die es verweist.
Beispielausgabe:
./snap/multipass/current -> 1784 ./snap/multipass/1597/.config/autostart -> ../config/autostart ./snap/multipass/1597/config/autostart/multipass.gui.autostart.desktop -> /snap/multipass/1597/usr/share/multipass/multipass.gui.autostart.desktop ./snap/multipass/1784/.config/autostart -> ../config/autostart ./snap/multipass/1784/config/autostart/multipass.gui.autostart.desktop -> /snap/multipass/1784/usr/share/multipass/multipass.gui.autostart.desktop ./.local/share/webkitgtk/databases/indexeddb/v0 -> /home/sk/.local/share/webkitgtk/databases/indexeddb find: ‘./.dbus’: Permission denied ./.config/spyder-py3/spyder.lock -> 18461 ./Downloads/Tor browser/Browser/.config/ibus/bus -> /home/sk/.config/ibus/bus ./.mozilla/firefox/htoypxlg.default-1563118799416/lock -> 192.168.225.37:+2642
Weitere Einzelheiten finden Sie in den Manpages.
$ man find
Hoffe das hilft.