У меня есть большое количество каталогов, многие из которых содержат символические ссылки на файлы в других местах.
Я хотел бы заменить эти ссылки файлами, как описано вэтот вопрос.
Однако для этого мне нужен список каталогов, содержащих символические ссылки. Я знаю, что могу увидеть их, tree
но есть ли способ получить хороший аккуратный список, который я мог бы передать в цикл?
решение1
Если вас устраивают относительные пути, вы можете попробовать что-то вроде:
find . -type l -exec dirname {} \;|sort -u
Если вам нужны абсолютные пути, вы можете использовать:
find "$PWD" -type l -exec dirname {} \;|sort -u
Идея состоит в том find
, чтобы использовать поиск мягких ссылок, получить имя каталога этих файлов, а затем получить только уникальные имена.