Летучая мышь удаляется полностью
Обновлено: 21.11.2024
В этом руководстве мы объясним, как создать пакетный файл для автоматического удаления папки с помощью CMD (командной строки). Мы продолжим серию руководств по использованию командного файла. Команда удалит все файлы и подпапки в указанной папке.
Этот пакетный файл может быть очень полезен, если необходимо удалить большие папки. Использование командной строки может быть более чем в 20 раз быстрее, чем использование самого проводника Windows. Наконец, очистка папки загрузки без необходимости вручную заботиться о ней каждую неделю или месяц — это облегчение. Кроме того, это можно сделать, запланировав этот пакетный файл для удаления папки в планировщике задач Windows.
Предыдущие руководства по пакетным файлам:
-
- Удаляйте файлы старше 7 дней, используя пакет и скрипт. – Удалить файл с помощью командной строки. – Скрипт для архивирования файлов с помощью команды cmd.
Как создать пакетный файл для удаления папки с помощью CMD.
- Создайте текстовый файл и скопируйте приведенную ниже командную строку:
- Сохранить как DeleteFolder.bat. Сохраняйте в любом месте, кроме папки D:\testfolder.
- Запустите пакет двойным щелчком и проверьте, не была ли папка удалена.
Пакетный файл для удаления папки
В этом случае мы удалим указанную папку. В нашем примере мы настроили пакетный файл для удаления «тестовой папки», расположенной в папке D.
Объяснение пакетных команд.
“D:\testfolder” Основная команда находит папку.
Параметр/s удалит все файлы, содержащиеся в подпапках каталога. Однако, если вы не хотите удалять файлы из подпапок, удалите параметр /s.
Параметр/f игнорирует любые настройки, доступные только для чтения.
/q «тихий режим» означает, что вам не будет предложено Да/Нет
Планирование пакета.
В противном случае этот пакетный файл можно запланировать в планировщике задач Windows для автоматического запуска. Для получения дополнительной информации нажмите на предыдущий пост: здесь
Удаляет один или несколько файлов. Эта команда выполняет те же действия, что и команда стирания.
Команду del также можно запустить из консоли восстановления Windows с другими параметрами. Дополнительные сведения см. в разделе Среда восстановления Windows (WinRE).
Если вы используете del для удаления файла с диска, вы не сможете его восстановить.
Синтаксис
Параметры
- r Файлы только для чтения
- h Скрытые файлы
- i Файлы, не проиндексированные по содержимому
- Системные файлы
- a Файлы готовы к архивированию
- l Точки повторной обработки
- – используется как префикс, означающий "не"
Примечания
Если вы используете команду del /p, вы увидите следующее сообщение:
ИмяФайла, Удалить (Да/Нет)?
Чтобы подтвердить удаление, нажмите Y. Чтобы отменить удаление и отобразить имя следующего файла (если вы указали группу файлов), нажмите N. Чтобы остановить команду del, нажмите CTRL+C.
Если вы отключите расширение команды, параметр /s будет отображать имена любых файлов, которые не были найдены, вместо отображения имен файлов, которые удаляются.
Если вы укажете в параметре конкретные папки, все включенные файлы также будут удалены. Например, если вы хотите удалить все файлы в папке \work, введите:
Вы можете использовать подстановочные знаки (* и ?) для одновременного удаления нескольких файлов. Однако, чтобы избежать непреднамеренного удаления файлов, следует осторожно использовать подстановочные знаки. Например, если вы введете следующую команду:
Команда del отображает следующее приглашение:
Вы уверены (да/нет)?
Чтобы удалить все файлы в текущем каталоге, нажмите Y, а затем нажмите ENTER. Чтобы отменить удаление, нажмите N, а затем нажмите ENTER.
Прежде чем использовать подстановочные знаки в команде del, используйте те же подстановочные знаки в команде dir, чтобы вывести список всех файлов, которые будут удалены.
Примеры
Чтобы удалить все файлы в папке Test на диске C, введите одно из следующих действий:
Чтобы удалить все файлы с расширением имени файла .bat из текущего каталога, введите:
Я хочу удалить определенный каталог в Windows. Я использую код ниже. Это работает нормально. Я хочу поместить файл .bat, который я сделал для этого процесса, в этот каталог. Естественно, файл .bat тоже удаляется. Я хочу, чтобы файл .bat был исключен из этого удаления. Что мне делать с кодом?
Вы не можете удалить каталог, если он содержит файл, например ваш пакетный файл. Если вы не удалите только файлы, а не каталог, это будет невозможно.
Спасибо, но я вас не понял.Каталог, который я хочу удалить, содержит файлы и мой файл *.bat. Когда я запускаю файл *.bat с приведенным выше кодом, он работает отлично. Однако я хочу, чтобы файл *.bat не удалялся.
Итак, вы хотите, чтобы ваш холодильник был выброшен, так как он больше не нужен, но у вас в холодильнике есть пиво, которое вы хотите сохранить, но хотите оставить его в холодильнике. Можно ли выбросить холодильник, не выкинув вместе с ним пиво?
Итак, здесь есть только 3 способа. Либо удалите все в папке, сохраните пакетный файл и саму папку, если вы хотите, чтобы пакетный файл существовал в папке, либо скопируйте пакетный файл из каталога во время удаления, или в лучшем случае никогда не сохраняйте пакетный файл в папке для начала.
Я не хочу выбрасывать холодильник. Я хочу выбросить из холодильника всю еду и напитки, кроме воды. В коде, который я уже привел в качестве примера, холодильник не выбрасывается. Он просто опустошает свою внутреннюю часть. То, что я хочу, не должно быть таким трудным. Простите мое невежество.
3 ответа 3
Все, что вам нужно сделать, это заблокировать пакетный файл, открыв для него фиктивный дескриптор чтения.
Естественно, команда rd покажет сообщение об ошибке, потому что в целевом каталоге есть хотя бы один файл (ваш собственный пакетный файл), который нельзя удалить. Вы можете скрыть это сообщение, перенаправив стандартный поток ошибок на нулевое устройство:
Сначала я тоже думал о чем-то подобном, но отказался от этой идеи, потому что не уверен, что rd продолжает удаление; Однако после нескольких тестов я думаю, что все будет хорошо…
Есть несколько способов выполнить вашу задачу.
Метод (особенно если вы обычно удаляете каталоги одной командой, а файлы — другой) заключается в том, чтобы идентифицировать файлы и подкаталоги отдельно. Сначала определите подкаталоги и удалите их с помощью команды RD, затем удалите все файлы, кроме самого пакетного файла, %0 :
Это можно сделать одной строкой с помощью утилиты ForFiles:
Или вы можете использовать цикл For с командой Dir:
Обратите внимание, что вы можете удалять только элементы, для которых у вас есть необходимые разрешения.
Я бы порекомендовал вам использовать более быстрый метод цикла For/F из двух, которые я опубликовал. Кстати, @Vuslatdemir, пожалуйста, прочтите Что мне делать, если кто-то ответит на мой вопрос?, и рассмотрите действие, основанное на его содержании.
Возникла проблема с методом цикла For \f. Этот метод не удаляет файлы с именами, содержащими неанглийские латинские буквы. Допустимы слова, содержащие только английские латинские буквы.
Пакетный (.BAT) сценарий (Windows) для удаления всех временных файлов после компиляции проекта с помощью Microsoft Visual Studio (Visual C++) или GCC. Он находит и удаляет (рекурсивно в заданных деревьях каталогов) все файлы, которые соответствуют любому из: *.obj, *.o, *.pch, *.pdb, *.ilk, *.idb, *.gch
Этот файл содержит двунаправленный текст Unicode, который может быть интерпретирован или скомпилирован не так, как показано ниже. Для просмотра откройте файл в редакторе, который показывает скрытые символы Unicode. Подробнее о двунаправленных символах Юникода
REM = ================================================== ==================== |
REM Batch (.BAT) скрипт (Windows) для удаления всех временных файлов после |
REM, компилирующий проект с помощью Microsoft Visual Studio (Visual C++) или GCC. |
REM | tr>
REM Предупреждение: он также удаляет базы данных отладки, необходимые для "входа" |
REM из отладчика. Эти файлы могут быть действительно *большими*, но если вы думаете, |
REM, они вам понадобятся, удалите файл для "*.pdb" ниже. | tr>
REM |
REM Использование: |
REM — открыть терминал (клавиша Windows + R , введите "cmd", нажмите ENTER) |
REM - Чтобы удалить файлы сборки из одного (или, необязательно) нескольких каталогов, выполните: |
REM delete_build_temps.bat СТРОЙКА1 [СТРОЙКА2] [СТРОЙКА3] [. ] |
REM |
REM Автор: Хосе Луис Бланко Кларако, 2013 |
REM выпущен в общественное достояние. |
REM ========================= ============================================ | < /tr>
set DIR = %CD% |
: Loop |
IF "%1" == " " GOTO Продолжить |
cd %1 |
del /s *.obj |
del /s *.o |
del /s *.pch |
del /s *.pdb |
del /s *.ilk |
del /s *.idb |
del /s *.gch |
SHIFT |
cd %DIR% |
Цикл GOTO |
: Продолжить |
Вы не можете выполнить это действие в данный момент.
Вы вошли в другую вкладку или окно. Перезагрузите, чтобы обновить сеанс. Вы вышли на другой вкладке или в другом окне. Перезагрузите, чтобы обновить сеанс.
Читайте также: