Как удалить файлы по маске с помощью скрипта

Часто нам задают вопросы вроде:

  • почему не работает bat-файл (т.е. скрипт)?;
  • почему скрипт не удаляет файлы с русскими буквами в названии?;
  • как правильно написать скрипт по удалению файлов и папок?

Самая частая проблема — это некорректная работа скрипта с кириллицей в названиях файлов и папок. И ниже вы увидите краткий пример скрипта для удаления файлов определённого типа из нужной папки с кириллицей в названии.

Итак, для создания корректных скриптов для работы с кириллическими именами рекомендуется скачать редактор Akelpad с официального сайта: http://sourceforge.net/projects/akelpad/

Создайте новый документ в AkelPad. Напишите строку. Мы в качестве примера пишем скрипт, который будет удалять файлы с расширением .torrent в папке D:\Загрузки:

forfiles /p d:\Загрузки\ /m *.torrent /c "cmd /c del /q /f @file"

/p — указание папки.

/m — фильтр по типу файлов.

/s — рекурсия (удаление файлов во вложенных директориях)

Скрипт удаления файлов в редакторе AkelPad

После набора команд в редакторе, нажмите Файл — Сохранить как…

В окне Сохранить как выполните следующие действия:

  • выберите папку для сохранения скрипта (любую, не имеет значения);
  • в поле Кодировка укажите 866 (OEM — русская);
  • задайте имя файла и через точку укажите расширение (имя.bat. Название файла не должно повторять имя команды del, shutdown и прочее. Назовите его например deltorr.bat);
  • нажмите Сохранить:

Сохранение bat-файла в кодировке OEM-866

Вот таким образом. Пишите в комментариях, помогла ли статья решить вашу проблему.

Оставьте комментарий