Войти

Показать полную графическую версию : [решено] Удаление папок, кроме самой новой


NuclearBox
21-04-2020, 06:51
Здравствуйте.
Есть директория ROOT, и в ней папки с файлами. Имена папок самые разные.
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания?

YuS_2
21-04-2020, 07:13
Как написать батник, который бы запускался внутри директории ROOT и удалял в ней все папки, кроме одной, имеющей самую последнюю (новую) дату создания? »
Поиск по форуму может помочь (http://forum.oszone.net/post-2131301.html#post2131301)
- только заменить 30 на 1
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения...

megaloman
21-04-2020, 19:02
Но надо понимать, что дата создания изменяется при копировании, в отличие от даты изменения... »Для папок, похоже, это не так: и дата создания, и дата изменения меняются.написать батник, который бы запускался внутри директории ROOT »@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 /B

YuS_2, Ваша ссылка нерабочая, мне прав не хватает

NuclearBox
21-04-2020, 19:56
YuS_2, megaloman, большое спасибо!
Супер! Оба варианта принял на вооружение)

YuS_2
21-04-2020, 20:35
Для папок, похоже, это не так: и дата создания, и дата изменения меняются. »
:dont-know
Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей.
У меня LastWriteTime не изменяется, но я пользуюсь Total Commander, у него опция есть специальная...

Ваша ссылка нерабочая, мне прав не хватает »
Хмм, вроде копировал ссылку... что её могло так покорежить - не понимаю... поправил.

alpap
22-04-2020, 00:47
Для папок, похоже, это не так: и дата создания, и дата изменения меняются »
У меня дата изменения точно не меняется:
фото (https://drive.google.com/open?id=1YKlFq0KtyhZusJ5948MymZW5CHAmeRMi)

Iska
22-04-2020, 03:57
Похоже системное копирование так работает... не копируется дата, поэтому приравнивается к текущей. »
Полагаю, проще — каталог просто создаётся.

YuS_2
22-04-2020, 06:44
У меня дата изменения точно не меняется »
Как именно копирование осуществляется? Возможно, каталог перемещается?

Полагаю, проще — каталог просто создаётся. »
Да, возможно... тем более, что есть функция CopyFile, но для каталогов нет такой, только CreateDirecory...

Iska
22-04-2020, 09:42
YuS_2, я про то ж. И, если для MoveFileEx() явным образом сказано, что переносятся и файлы, и каталоги, то для CopyFileEx() — говорится только про файлы.

megaloman
22-04-2020, 09:45
alpap, ===============Исходные папки

===============Создание

Z:\>Dir /A:D /T:C D:\CMD\JS_Host\Дискета_от_книги\
Том в устройстве D имеет метку Arhiv
Серийный номер тома: F497-24CE

Содержимое папки D:\CMD\JS_Host\Дискета_от_книги

05.04.2019 18:11 <DIR> .
05.04.2019 18:11 <DIR> ..
05.04.2019 18:11 <DIR> Chapter01
05.04.2019 18:11 <DIR> Chapter02
05.04.2019 18:11 <DIR> Chapter03
05.04.2019 18:11 <DIR> Chapter04
05.04.2019 18:11 <DIR> Chapter05
05.04.2019 18:11 <DIR> Chapter06
05.04.2019 18:11 <DIR> Chapter07
05.04.2019 18:11 <DIR> Chapter08
05.04.2019 18:11 <DIR> Chapter09
05.04.2019 18:11 <DIR> Chapter10
05.04.2019 18:11 <DIR> Chapter11
0 файлов 0 байт
13 папок 24*591*048*704 байт свободно

===============Изменение

Z:\>Dir /A:D /T:W D:\CMD\JS_Host\Дискета_от_книги\
Том в устройстве D имеет метку Arhiv
Серийный номер тома: F497-24CE

Содержимое папки D:\CMD\JS_Host\Дискета_от_книги

05.04.2019 18:11 <DIR> .
05.04.2019 18:11 <DIR> ..
22.04.2020 09:28 <DIR> Chapter01
05.04.2019 18:11 <DIR> Chapter02
05.04.2019 18:11 <DIR> Chapter03
05.04.2019 18:11 <DIR> Chapter04
05.04.2019 18:11 <DIR> Chapter05
05.04.2019 18:11 <DIR> Chapter06
05.04.2019 18:11 <DIR> Chapter07
05.04.2019 18:11 <DIR> Chapter08
05.04.2019 18:11 <DIR> Chapter09
05.04.2019 18:11 <DIR> Chapter10
05.04.2019 18:11 <DIR> Chapter11
0 файлов 0 байт
13 папок 24*591*048*704 байт свободно

===============Скопированные папки Copy-Past

===============Создание

Z:\>Dir /A:D /T:C Z:\Box_In\
Том в устройстве Z имеет метку Arhiv
Серийный номер тома: F497-24CE

Содержимое папки Z:\Box_In

05.04.2019 17:48 <DIR> .
05.04.2019 17:48 <DIR> ..
22.04.2020 09:36 <DIR> Chapter01
22.04.2020 09:36 <DIR> Chapter02
22.04.2020 09:36 <DIR> Chapter03
22.04.2020 09:36 <DIR> Chapter04
22.04.2020 09:36 <DIR> Chapter05
22.04.2020 09:36 <DIR> Chapter06
22.04.2020 09:36 <DIR> Chapter07
22.04.2020 09:36 <DIR> Chapter08
22.04.2020 09:36 <DIR> Chapter09
22.04.2020 09:36 <DIR> Chapter10
22.04.2020 09:36 <DIR> Chapter11
0 файлов 0 байт
13 папок 24*591*048*704 байт свободно

===============Изменение

Z:\>Dir /A:D /T:W Z:\Box_In\
Том в устройстве Z имеет метку Arhiv
Серийный номер тома: F497-24CE

Содержимое папки Z:\Box_In

22.04.2020 09:36 <DIR> .
22.04.2020 09:36 <DIR> ..
22.04.2020 09:36 <DIR> Chapter01
22.04.2020 09:36 <DIR> Chapter02
22.04.2020 09:36 <DIR> Chapter03
22.04.2020 09:36 <DIR> Chapter04
22.04.2020 09:36 <DIR> Chapter05
22.04.2020 09:36 <DIR> Chapter06
22.04.2020 09:36 <DIR> Chapter07
22.04.2020 09:36 <DIR> Chapter08
22.04.2020 09:36 <DIR> Chapter09
22.04.2020 09:36 <DIR> Chapter10
22.04.2020 09:36 <DIR> Chapter11
0 файлов 0 байт
13 папок 24*591*048*704 байт свободно
В исходный Chapter01 записал файл, поэтому там дата изменения сегодняшняя, а создания - чтарая

alpap
22-04-2020, 12:14
Как именно копирование осуществляется? »
забыл указать
на фото 12 файлы помещены в другую папку (Temp) с помощью drag-and-drop
на фото 13 вырезаны из папки (Temp) и вставлены обратно откуда брались (диск C:\)

YuS_2
22-04-2020, 12:28
на фото 12 файлы помещены в другую папку (Temp) с помощью drag-and-drop
на фото 13 вырезаны из папки (Temp) и вставлены обратно откуда брались (диск C:\) »
оба действия = перемещение, не копирование.




© OSzone.net 2001-2012