[Советы по Linux] Как составить список символических ссылок в Linux
Мы уже знали, что такое символические ссылки, символические ссылки или программные ссылки и как находить и удалять неработающие символические ссылки из нашей системы Linux. Сегодня мы научимся составлять список символических ссылок в Linux. Если вы уже давно создали символические ссылки и совершенно забыли о них, этот быстрый совет поможет вам легко найти символические ссылки с помощью команды «найти».
Получение списка символических ссылок в Linux
Чтобы просмотреть все символические или символические ссылки или программные ссылки в системе Linux, запустите:
sudo find / -type l
Здесь,
- / — представляет всю файловую систему.
- -type — указывает тип файла.
- l — ссылка на символическую ссылку.
Эта команда будет искать все доступные символические ссылки во всей файловой системе. Это займет некоторое время в зависимости от размера вашей файловой системы. Пожалуйста, будьте терпеливы!
Если вы хотите ограничить поиск символических ссылок в определенном каталоге, укажите его путь, как показано ниже.
Например, следующая команда выведет список всех программных ссылок в текущем каталоге:
find . -type l
Обратите внимание на одну точку (.) в приведенной выше команде. В Linux одна точка (.) используется для обозначения текущего (настоящего) каталога каталога. Двойная точка (..) используется для обозначения родительского каталога.
Пример вывода:
./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
Если вы хотите искать символические ссылки в другом каталоге, замените точку (.) на путь к каталогу.
Если вам нужен подробный вывод, включая временные метки, права доступа к файлам, владельца и группу, используйте вместо этого следующую команду:
find . -type l -ls
Пример вывода:
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
Получение списка символических ссылок в Linux
Как вы могли заметить из приведенных выше результатов, команда find ищет символические ссылки в текущем каталоге и его подкаталогах.
Если вы хотите перечислить все символические ссылки на один уровень ниже в текущем каталоге, используйте флаг maxlength, как показано ниже.
find . -maxdepth 1 -type l
Другой способ найти список символических ссылок в текущем каталоге:
find . -type l -printf '%p -> %l\n'
Это рекурсивно выведет список всех символических ссылок в текущем каталоге. Кроме того, он показывает фактические файлы, на которые указывает.
Пример вывода:
./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
Более подробную информацию можно найти на страницах руководства.
man find
Надеюсь это поможет.