Я пытаюсь удалить файлы через
forfiles -p "E:\check" -s -m *.* -d -10 -c "cmd /c del /Q /S E:\check"
Но если есть файл, которому больше 10 дней, он удаляет все файлы в папке.
решение1
Если есть файл, которому больше 10 дней, он удаляет все файлы в папке.
forfiles -p "E:\check" -s -m *.* -d -10 -c "cmd /c del /Q /S E:\check"
Это неудивительно, если вы удаляете искомый каталог (и все его подкаталоги) с помощью следующей команды:
del /Q /S E:\check
Вместо этого вам нужно удалить соответствующие файлы. Попробуйте следующую команду:
forfiles -p "E:\check" -s -m *.* -d -10 -c "cmd /c del /q @path"
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD- Отличный справочник по всем вопросам, связанным с командной строкой Windows.
- дель- Удалить один или несколько файлов.
- делолдер- Удалить файлы старше N дней
- forfiles- Выберите файл (или набор файлов) и выполните команду для каждого файла. Пакетная обработка.