Удаление скрытых файлов из командного файла

Все об администрировании рабочих станций Windows 95/98/NT/2000/XP/7/8. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1496
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Удаление скрытых файлов из командного файла

Сообщение UncleFather »

Проблема:

Имеется скрипт, который должен удалять все содержимое (файлы и папки) из заданной директории.
Через некоторое время заметил, что некоторые файлы (например, Thumbs.db) не удаляются.

Оказалось, что команда

Код: Выделить всё

Del /F /S /Q C:\Temp\*

не удаляет файлы с атрибутом "системный". Именно поэтому файлы Thumbs.db не удалялись.

Решение:

Модифицируем команду удаления:

Код: Выделить всё

del /F /S /Q /A: SRHA C:\Temp\*

Теперь удалятся будут ВСЕ файлы из папки C:\Temp\ и вложенных в нее папок, в том числе с одним или несколькими атрибутами:

  • S - Системные файлы

  • R - Доступные только для чтения

  • H - Скрытые файлы

  • A - Файлы для архивирования

Примечание:

Заметил такую особенность: на некоторых версиях Windows нужно обязательно делать пробел между ключом "/A:" и его параметрами "SRHA" вот так: "/A: SRHA", на других же версиях синтаксис команды может быть без пробела: "/A:SRHA"

Альтернативный вариант:

Для удаления файлов с атрибутами, можно выполнять две команды. Первая снимает атрибуты, вторая - удаляет файлы. Например, так:

Код: Выделить всё

forfiles /p C:\Temp\ /s /m thumbs.db /C "cmd /c attrib -S -R -H -A @file &  DEL /F /S /Q @file"

Здесь, в параметрах команды DEL можно убрать ключ "/S", предназначенный для рекурсивной обработки, т.к. все равно команда forfiles будет перебирать все файлы по маске в заданной папке.


Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram

Изображение
Изображение
Изображение
Изображение