Как видеть конец длинной цепочки символьных ссылок

Предположим, что у меня есть ссылка, которая указывает на другую ссылку, которая указывает на другую ссылку, и т.д. путь по линии. Я не уверен сколько уровней ссылок существует. Что гладкая командная строка путь состоит в том, чтобы видеть окончательную цель всех этих ссылок?

6
задан 20.10.2010, 21:28

4 ответа

Некоторые версии readlink поддерживайте -f опция следовать за цепочкой в конец. Тот на моем поле Debian делает. Тот на моем поле Mac OS не делает (но затем, это переопределяется одним предоставленным штрейкбрехером, который делает).

7
ответ дан 07.12.2019, 15:40

Возможно, это не лучшее решение, это зависит Ваших потребностей. Можно получить inode конца цепочки с:

stat -Lc '%i' the-link

и если Вам нужен путь тех файлов (больше чем один, если концы цепочки трудно связаны друг друга), также:

find /search/path/ `stat -Lc '%i' the-link`

Хорошо, существует более умное решение:

readlink -f the-file
4
ответ дан 07.12.2019, 15:40

См. мои ответы здесь и здесь для небольших функций, которые можно использовать в качестве начальных точек для выполнения то, что Вы хотите, если Вы хотите видеть все промежуточные каналы.

1
ответ дан 07.12.2019, 15:40

Смотрите на этот сценарий жемчуга, я думаю, что это - то, что Вы ищете.

ftp://ftp.cs.duke.edu/pub/yuji/tools/reslink/reslink.pl

0
ответ дан 07.12.2019, 15:40

Теги

Похожие вопросы