Я хочу удалить все символические ссылки файлов. У меня есть структура каталогов, например /usr/local/instantclient/11.2.0.3
которая содержит множество файлов, и у меня есть символические ссылки на эти файлы в /usr/local/lib/
Теперь я хочу удалить все эти символические ссылки этих файлов. Как я могу сделать это в одной команде. Если я удалю фактический /usr/local/instantclient/11.2.0.3
содержащий файлы, он оставит неработающие ссылки в /usr/local/lib
.
6
1 ответ
11
Чтобы удалить ссылки (от man find
под -type
):
l symbolic link; this is never true if the -L option or the
-follow option is in effect, unless the symbolic link is
broken. If you want to search for symbolic links when -L
is in effect, use -xtype.
Я думаю, что это должно сработать:
find /usr/local/lib/ -maxdepth 1 -follow -type l
Выводит ли список файлов, которые вы хотите удалить? Если это так, когда вы уверены на 100%:
find /usr/local/lib/ -maxdepth 1 -follow -type l -delete
Это удалит только неработающие ссылки. Чтобы удалить все ссылки, удалите -follow
, но я бы не стал этого делать в /usr/local/lib
.