How do I find all custom-created symbolic соединения in the entire system?

гve created several symbolic соединения in different ты нравишься.

I can't really recall where each one of them is in the system and гve already переместите programs they пашите associated with.

Is there в рукописный шрифт / program / whatever that хан search the entire system and remove any symlink which is custom-created?

1
задан 30 December 2015 в 23:35

3 ответа

Поскольку Вы удалили связанные/целевые программы, они должны стать поврежденными. Таким образом, должно быть легко искать поврежденные символьные ссылки:

find . -type l -exec sh -c "file -b {} | grep -q ^broken" \; -print

Изменение . для другой поисковой папки.

Источник: , Как я могу найти поврежденные символьные ссылки

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

2
ответ дан 3 December 2019 в 06:59

find . -user "$USER" -type l

Списки все символьные ссылки под текущим dir и subdirs создаются Вашим пользователем. Это также означает созданный программой Ваш пользователь, которого (Вы) запустили, но если можно не забыть создавать перечисленную символьную ссылку, она должна быть прекрасной. Проверьте прошлое время доступа, если не уверенный. Если Вы также хотите перейти по ссылкам, передайте -L.

2
ответ дан 3 December 2019 в 06:59

Нет никакого способа отличить "пользовательски созданные" символьные ссылки от "non-custom-created" символьных ссылок.

, Если все они были созданы без sudo / являющийся корнем, можно использовать это, которое произведет полный список символьных ссылок, принадлежавших пользователю (который должен быть очень коротким):

find / -xdev -user "$USER" -type l

Иначе Вам не повезло. Я попробовал:

find / -xdev -type l

в моей системе и я получил ~49000 результатов.

0
ответ дан 3 December 2019 в 06:59

Другие вопросы по тегам:

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