DEL — удаление файлов из командной строки Windows

DEL удаляет один или несколько файлов прямо из командной строки Windows. Поддерживает маски, рекурсию и принудительное удаление защищённых файлов.

Команда DEL удаляет один или несколько файлов из командной строки Windows. Это быстрый способ очистить каталог по маске, удалить файл без корзины или встроить удаление в bat-скрипт.

Синтаксис команды DEL

DEL [/P] [/F] [/S] [/Q] [/A[[:]атрибуты]] имя_файла [...]

Можно указать несколько имён через пробел, использовать маски (*, ?) и переменные среды. Псевдоним команды — ERASE.

Ключи и параметры

Ключ Описание Пример
/P Запросить подтверждение перед каждым удалением DEL /P report.log
/F Принудительно удалить файлы, помеченные «только для чтения» DEL /F readme.txt
/S Удалить файлы во всех подкаталогах (рекурсия) DEL /S *.tmp
/Q Тихий режим — не запрашивать подтверждение при маске * DEL /Q /S *.bak
/A:H Удалить только скрытые файлы DEL /A:H *.log
/A:R Удалить только файлы с атрибутом «только чтение» DEL /A:R old.cfg
/A:-A Удалить файлы без атрибута архива (уже обработанные) DEL /A:-A *.dat
/? Показать встроенную справку DEL /?

Примеры использования

Удалить один файл

Самый простой сценарий — удалить конкретный файл в текущем каталоге.

DEL report.txt

Если файл не защищён атрибутом «только чтение», он будет удалён немедленно без подтверждения.

Удалить несколько файлов сразу

Имена перечисляются через пробел; можно смешивать расширения.

DEL file1.txt file2.doc file3.jpg

CMD обработает каждое имя последовательно и сообщит, если файл не найден.

Очистить каталог от временных файлов по маске

Удобно для чистки после сборки или работы установщиков.

DEL /Q C:\Temp\*.tmp

Ключ /Q отключает запрос «Уверены?» при использовании маски *.

Рекурсивное удаление по всем подпапкам

Полезно, когда нужно вычистить .log-файлы по всему дереву каталогов.

DEL /S /Q D:\Logs\*.log

CMD пройдёт по всем вложенным папкам и удалит совпадения.

Принудительно удалить файл «только для чтения»

Без /F такие файлы пропускаются с ошибкой доступа.

DEL /F C:\Config\locked.cfg

После выполнения файл будет удалён, даже если атрибут R установлен.

Удалить файлы с подтверждением каждого

Подходит, когда вы не уверены в содержимом папки и хотите проверить каждое имя.

DEL /P /S C:\Old\*.*

Перед каждым удалением CMD покажет имя файла и ждёт нажатия Y/N.

Удалить только скрытые файлы

Фильтрация по атрибуту позволяет точечно убрать системные или скрытые файлы без риска затронуть остальные.

DEL /A:H C:\Folder\*

Видимые файлы остаются нетронутыми.

Частые ошибки и решения

Ошибка Причина Решение
Не удаётся найти файл Неверный путь или имя, файл не существует Проверьте путь командой DIR; убедитесь, что расширение указано верно
Отказано в доступе Файл открыт другим процессом или помечен «только чтение» Закройте процесс, удерживающий файл, и добавьте ключ /F
Подтверждение не запрашивается, хотя ожидалось Маска * без /Q должна запрашивать подтверждение, но флаг мог быть добавлен по умолчанию в скрипте Явно укажите /P, если нужно подтверждение каждого файла
DEL не удаляет папку DEL предназначена только для файлов; для папок нужна RMDIR или RD Используйте RD /S /Q папка для удаления каталога
Маска *.* не удаляет файлы без расширения *.* в CMD означает «файлы с точкой в имени»; файлы без расширения не совпадают Используйте маску * (без второй звёздочки) для удаления всех файлов

Когда применять, а когда нет

DEL удобна в скриптах автоматизации, планировщике задач и при массовой чистке по маске. Команда работает на любом диске и файловой системе, доступной в Windows. Файлы удаляются в обход корзины — восстановить их стандартными средствами не получится, поэтому перед выполнением команды с /S /Q убедитесь в правильности пути. Каталоги командой DEL не удаляются. PowerShell-аналог — Remove-Item, который поддерживает трубы и объектно-ориентированную фильтрацию.

FAQ

Попадают ли удалённые командой DEL файлы в корзину?

Нет. DEL удаляет файлы минуя корзину. Восстановить их можно только специализированными утилитами восстановления данных, и только если поверх не была произведена новая запись на диск.

Можно ли отменить DEL?

Встроенных средств отмены нет. Единственный способ — утилиты восстановления файлов (например, Recuva). Чем быстрее вы их запустите после ошибочного удаления, тем выше шанс успеха.

Как удалить файл с пробелами в имени?

Заключите путь в двойные кавычки: DEL "C:\My Folder\my file.txt". Без кавычек CMD воспринимает каждое слово как отдельный аргумент.

Чем DEL отличается от ERASE?

Ничем. ERASE — это псевдоним DEL с идентичным синтаксисом и поведением. Оба варианта взаимозаменяемы.

Как удалить все файлы в папке, но не саму папку?

Выполните DEL /Q /S "C:\Folder\*". Папки останутся нетронутыми — DEL обрабатывает только файлы.

Работает ли DEL с сетевыми путями?

Да. Можно указать UNC-путь: DEL /Q "\\server\share\*.tmp". Требуются соответствующие права на запись в сетевую папку.

Оцените статью
( Пока оценок нет )
MW10
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.