Трассировка маршрута символической ссылки

Я хочу разрешить символическую ссылку с дополнительной опцией для печати всей ссылки. Например, я хочу запустить команду типа readlink -f "symlink2" которая сообщает о каждой записи readlink -f "symlink2" . Другими словами, если вы решите символическую ссылку «symlink2-> symlink1 -> / path / file», то результатом команды выше является «/ path / file», и я прокручиваю вывод, например:

 $readlink -f "symlink2 symlink1 /path/file 

  • Символы, не работающие с плавким предохранителем GlusterFS
  • Где хранится информация о жестких / непрямых ссылках?
  • изменить дату символической ссылки на bindfs
  • Список символических ссылок в текущем каталоге?
  • Стратегии для поддержания ссылки на файл после его перемещения или переименования?
  • Использовать символическую ссылку для перемещения каталога, созданного пакетом .deb - что-нибудь сломается?
  • Symlink в тот же каталог
  • Переключить символическую ссылку и каталог
  • 2 Solutions collect form web for “Трассировка маршрута символической ссылки”

    Один из способов сделать это – создать собственную рекурсивную readlink .

     function readlinkWithPrint() { link=`readlink "$@"` [ -e "$link" ] && echo "$link" [ -h "$link" ] && readlinkWithPrint "$link" } 

    Вот тест:

     $ touch file $ ln -s file symlink1 $ ln -s symlink1 symlink2 $ readlinkWithPrint symlink2 symlink1 file 

    К сожалению, эта функция довольно простая; параметры, которые вы предоставляете frist readlink , не будут распространяться на остальные, плюс вы не сможете прочитать несколько файлов.

    Я думаю, что вы ищете namei , которое является частью пакета util-linux, доступным для каждой не встроенной системы Linux.

    См. Эту тему относительно эквивалента для macOS. Исходный код должен быть в основном переносимым, если вам это нужно в другом варианте Unix.

    Interesting Posts

    создать LVM VG для корня / dev / sda2

    как linux обновляет таблицу страниц после переключения контекста

    top / ps / mpstat, показывающий разный выход

    У меня есть 10 файлов в папке Unix с расширением .txt, здесь мне нужно получить все файлы отдельно от файла fgh.txt (любой), что такое команда UNIX?

    Пакет Debian, созданный checkinstall, перезаписывает файл конфигурации в / etc / default

    Программное обеспечение для контроля доступа по времени для точек доступа Wi-Fi

    Проблема Установка .ttf с FontConfig, в userdir для учетной записи пользователя, запуск RHEL

    Терминальные таблицы и текстовые процессоры?

    mv «Не каталог», когда имя цели слишком длинное

    Могу ли я подключиться к просмотренным сеансам ssh или просматривать их?

    Ядро: поддержка пространств имен

    Python в базе кода GNOME

    Порт для вывода / ограничения трафика ebtables

    x11 сохраняет замороженную виртуальную консоль

    Форматирование файла в формате HTML

    Linux и Unix - лучшая ОС в мире.