Как массово удалить символические ссылки в Windows (среди обычных файлов с одинаковыми именами во многих папках)?
Есть ли способ быстро удалить много символических ссылок во многих папках, которые содержат много других файлов? Например, какая-нибудь команда в командной строке (например, удастся удалить весь слинк, созданный в день XX)?
Удалите все объекты, которые имеют символическую ссылку, все остальные объекты останутся. Теперь я перемещаюсь только по папкам, выбирая их вручную в проводнике Windows (переставляем все элементы по размеру и символическим ссылкам размером 0 КБ, а клавиши Shift выбираем все -> del) и удаляю медленно, возможно, иногда ошибку sl с другими файлами 0 КБ. Мой младший братан перетаскивает много файлов, щелкнув правой кнопкой мыши (Link Shell Extension Copyright (C) 1999 - 2008 Hermann Schinagl, уже установленная на ПК и встроенная в Windows Explorer), и он выбрал drop в качестве символической ссылки, все это стало мусором.
2 ответа
Это похоже на ответ JdeBP, но не требует никакого внешнего программного обеспечения:
FOR /F "usebackq delims=" %a IN (`DIR /a:l /s /b "C:\dir\with\symlinks"`) DO RMDIR "%a"
Когда используется в сценарии, заменить %a
с %%a
,
Использование утилиты SFUA:
Поиск символических ссылок можно выполнить так же, как и поиск жестких ссылок: с помощью find
команда, входящая в состав служебного инструментария Microsoft SFUA, которая работает в подсистеме для приложений на основе Unix:
находить. тип l|xargs rm -
Использование программного обеспечения JP TCC / LE:
Это простое упражнение в использовании переключателей атрибутов и обычных del
команда:
del / a: l *Вы можете, конечно, использовать
/s
, /p
и другие варианты del
команда. И вы можете просмотреть, что будет удалено с помощью del
"s /n
вариант или просто заменив dir
за del
,Предостережение
Оба из них действительно находят точки повторной обработки. Символические ссылки - всего лишь одна из форм повторных точек. Если у вас есть другие, такие как соединения, вам нужно быть осторожным с тем, к каким частям дерева каталогов вы применяете эти команды. Использование диапазонов дат только для удаления файлов с недавними датами создания (/[dc…]
) также может быть выгодно.