CMD/BAT - [решено] Удаление папок, кроме самой новой
-
NuclearBox
CMD/BAT - [решено] Удаление папок, кроме самой новой
Здравствуйте.
Есть директория ROOT, и в ней папки с файлами. Имена папок самые разные.
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания?
Есть директория ROOT, и в ней папки с файлами. Имена папок самые разные.
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания?
-
YuS_2
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата NuclearBox:
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания?
Поиск по форуму
- только заменить 30 на 1
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения...
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания?
CMD/BAT - [решено] Удаление папок, кроме самой новой
Поиск по форуму
CMD/BAT - Удаление всех папок кроме 30-ти последних
- только заменить 30 на 1
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения...
-
alpap
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата YuS_2:
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения...
Для папок, похоже, это не так: и дата создания, и дата изменения меняются.
Цитата NuclearBox:
написать батник, который бы запускался внутри директории ROOT
Я бы такого сильно опасался - поэтому в батнике укажите реальный полный путь и располагайте его где угодно.
[spoiler]Код: [/spoiler]
YuS_2, Ваша ссылка нерабочая, мне прав не хватает
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения...
CMD/BAT - [решено] Удаление папок, кроме самой новой
Для папок, похоже, это не так: и дата создания, и дата изменения меняются.
Цитата NuclearBox:
написать батник, который бы запускался внутри директории ROOT
CMD/BAT - [решено] Удаление папок, кроме самой новой
Я бы такого сильно опасался - поэтому в батнике укажите реальный полный путь и располагайте его где угодно.
[spoiler]Код: [/spoiler]
Код: Выделить всё
@Echo Off
Set "Folder=D:\Tra La La\Root"
If Not "%Folder:~-1%"=="\" Set "Folder=%Folder%\"
FOR /F "usebackq skip=1 delims=" %%i IN (`2^>nul Dir "%Folder%*.*" /B /A:D /T:C /O:-D`) DO Rd /S /Q "%Folder%%%i"
Exit /BYuS_2, Ваша ссылка нерабочая, мне прав не хватает
-
megaloman
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
YuS_2, megaloman, большое спасибо!
Супер! Оба варианта принял на вооружение)
Супер! Оба варианта принял на вооружение)
-
NuclearBox
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата megaloman:
Для папок, похоже, это не так: и дата создания, и дата изменения меняются.

Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей.
У меня LastWriteTime не изменяется, но я пользуюсь Total Commander, у него опция есть специальная...
Цитата megaloman:
Ваша ссылка нерабочая, мне прав не хватает
Хмм, вроде копировал ссылку... что её могло так покорежить - не понимаю... поправил.
Для папок, похоже, это не так: и дата создания, и дата изменения меняются.
CMD/BAT - [решено] Удаление папок, кроме самой новой

Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей.
У меня LastWriteTime не изменяется, но я пользуюсь Total Commander, у него опция есть специальная...
Цитата megaloman:
Ваша ссылка нерабочая, мне прав не хватает
CMD/BAT - [решено] Удаление папок, кроме самой новой
Хмм, вроде копировал ссылку... что её могло так покорежить - не понимаю... поправил.
-
NuclearBox
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата megaloman:
Для папок, похоже, это не так: и дата создания, и дата изменения меняются
У меня дата изменения точно не меняется:
Для папок, похоже, это не так: и дата создания, и дата изменения меняются
CMD/BAT - [решено] Удаление папок, кроме самой новой
У меня дата изменения точно не меняется:
фото
-
alpap
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата YuS_2:
Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей.
Полагаю, проще — каталог просто создаётся.
Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей.
CMD/BAT - [решено] Удаление папок, кроме самой новой
Полагаю, проще — каталог просто создаётся.
-
Iska
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
Цитата alpap:
У меня дата изменения точно не меняется
Как именно копирование осуществляется? Возможно, каталог перемещается?
Цитата Iska:
Полагаю, проще — каталог просто создаётся.
Да, возможно... тем более, что есть функция CopyFile, но для каталогов нет такой, только CreateDirecory...
У меня дата изменения точно не меняется
CMD/BAT - [решено] Удаление папок, кроме самой новой
Как именно копирование осуществляется? Возможно, каталог перемещается?
Цитата Iska:
Полагаю, проще — каталог просто создаётся.
CMD/BAT - [решено] Удаление папок, кроме самой новой
Да, возможно... тем более, что есть функция CopyFile, но для каталогов нет такой, только CreateDirecory...
-
YuS_2
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
YuS_2, я про то ж. И, если для MoveFileEx() явным образом сказано, что переносятся и файлы, и каталоги, то для CopyFileEx() — говорится только про файлы.
-
Iska
Re: CMD/BAT - [решено] Удаление папок, кроме самой новой
YuS_2, я про то ж. И, если для MoveFileEx() явным образом сказано, что переносятся и файлы, и каталоги, то для CopyFileEx() — говорится только про файлы.