Каковы лучшие инструменты / методы программирования для выполнения сложного вложения символических ссылок и полного захвата и создания отчетов по каждой символической ссылке по пути, в том числе в середине пути (дополнительную информацию см. Ниже) 1002 *.
Вот конкретный пример. Рассмотрим следующий вывод команды shell
ls -l /Library/Java/Home
lrwxr-xr-x 1 root admin 48 Feb 24 12:58 /Library/Java/Home -> /System/Library/Frameworks/JavaVM.framework/Home
Команда ls сообщает вам, что файл file / Library / Java / Home является символической ссылкой на другое место. Тем не менее, это не дает вам понять, что то, на что он указывает, также является символической ссылкой
ls -l /System/Library/Frameworks/JavaVM.framework/Home
lrwxr-xr-x 1 root wheel 24 Feb 24 12:58 /System/Library/Frameworks/JavaVM.framework/Home -> Versions/CurrentJDK/Home
Это, в свою очередь, не дает вам знать, что часть пути указанного файла является символической ссылкой.
ls -l /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK
lrwxr-xr-x 1 root wheel 3 Feb 24 12:58 /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK -> 1.5
Что, просто для завершения этой истории, является еще одной символической ссылкой
ls -l /System/Library/Frameworks/JavaVM.framework/Versions/1.5
lrwxr-xr-x 1 root wheel 5 Feb 24 12:58 /System/Library/Frameworks/JavaVM.framework/Versions/1.5 -> 1.5.0
Наконец указав на «настоящую» папку.
Существуют ли какие-либо инструменты, которые могут каким-то образом визуализировать для вас полную цепочку ссылок (графически или в виде старого текста)? Я уверен, что можно написать это самим (и если вы хотите, пожалуйста, сделайте это и поделитесь!), Но это похоже на то, что было бы чревато "о, дерьмо, крайний случай. крайний случай ". Я надеюсь, что кто-то уже ушел в беспокойство.
Я занимаюсь фрилансом / контрактом, и все используют символические ссылки немного по-разному для установки своих PHP-приложений на веб-сервере. Половина моей работы обычно заключается во вложении этой (неизбежно) недокументированной иерархии, поэтому мы знаем, куда поместить наш новый код / модули.