Удаление заданного количества файлов из папки
Здравствуйте!
Подскажите, пожалуйста, каким образом можно зациклить удаление n первых по алфавиту файлов из папки? Заранее благодарю :hi: |
Цитата:
|
mwz, нет, удалить все файлы проще)
А тут, к примеру, только первые пять... И с паузой удалять по 5 файлов до тех пор, пока в папке не останется меньше пяти, но с этой частью всё понятно, а вот удаление конкретного количества - проблемка :sorry: |
это:
Код:
dir /a-d/b "C:\papka"|more +5 а паузу добавляйте, если надо, а если все это поместить в вывод for /l - получим цикл удаления пятерок, единственно надо посчитать все файлы заранее чтобы кол-во в for /l взять с запасом, но можно и точнее все сделать при желании, причем вариантов не один. |
alpap,
Код:
:M1 |
Цитата:
|
UserName1989,
Вот вариант, который удалит кол-во файлов, кратное заданному числу, и оставляет кол-во файлов, менее этого числа, последние при сортировке по имени. Если кол-во файлов нацело делится на это число, удалятся все файлы
Код:
@Echo Off Если всё же надо удалять с паузами, то вот вариант
Код:
@Echo Off |
если я правильно понимаю задание, то надо удалять из папки файлы пачками по 5 штук с паузой после пачки
Код:
@echo off (файлы удаляются пачками по 5шт с соответствующей записью в лог, если число файлов не было кратное 5ти, последняя пачка просто будет содержать число файлов менее 5ти, на работе кода никак не скажется - удалены будут тоже и отображены в логе если то оставшееся кол-во файлов после удаления которое менее 5ти должно оставаться, а не удаляться, то 9ю строку: Код:
2>nul dir /a-d/b|>nul find /v "" || goto :eof Код:
for /f %%a in ('dir /a-d/b^|find /c /v ""') do if %%a lss %cnf% goto :eof |
Напоминает:
"- А хотите я его стукну? И он станет фиолетовым в крапинку!"©цитата :) |
YuS_2, ага, ..., подобных бы товарищей всех во фриланс да под кругленькую сумму и условие научились бы писать правильно и полно и примеры бы привели и у препода 10 раз уточнили что он хочет.
|
Вот именно! Какой такой практический смысл удаления файлов с паузами, да ещё и по алфавиту? Жесть какая-то... таких преподавателей нельзя допускать до обучения студентов, ибо фантазия совсем не в правильную сторону направлена...
|
megaloman, alpap, благодарствую, что помогли разобраться в непонятном моменте :hi:
|
Цитата:
я, например, проверял на таких файлах: Скрытый текст
Код:
file1.txt и достаточно даже командой Код:
>spisok.txt dir /a-d/b "papka" |
Цитата:
В лексикографическом порядке файлы будут расположены на разделе с файловой системой NTFS (поскольку там сами записи в каталоге уже располагаются в упорядоченном B+-дереве). На FAT12/16/32 — в хронологическом порядке (по дате создания). dir тут ничего не изобретает, а просто выдаёт то, что возвращают ей функции WinAPI FindFirstFile/FindNextFile. И любые шаблонные операции (например, copy *.txt, del *.*) будут производить операции в таком же порядке. |
Время: 02:56. |
Время: 02:56.
© OSzone.net 2001-