![]() |
BAT-скрипт удаления файлов
Привет!
В папке находится 60 тыс файлов. У всех название сформировано по маске _дата_название_id.jpg Например, _20181212_розы_544.jpg. И есть файл со значениями id для удаления. Эти id в файле расположены в столбец, один id на одну строку. Как сделать скрипт, который удалял бы все файлы, в названии которых есть id, указанный в файле? Или это только отдельную прогу писать? |
Код:
echo off |
Busla, Stolc,
под один код много чего попадет, ведь код один и тот же может быть у многих файлов, точно дата или имя не будут играть роли? Файл 155566 |
alpap, id - сокращение от identificator
и по формулировке самой задачи видно что под id подразумевается идентификатор |
Цитата:
|
Может кто-то и поможет с написанием скрипта...
Задача следущая: Есть в папке файлы с названиями типа: имя_rabota+два числа.jpg mama_myla_ramu_rabota01.jpg, mama_myla_ramu_rabota02.jpg, mama_myla_ramu_rabota03.jpg papa_rubil_drova_rabota01.jpg, papa_rubil_drova_rabota02.jpg syn_spal_doma_rabota01.jpg Результат: после удаления должен остатся файл с найбольшим числом в конце в своей группе: mama_myla_ramu_rabota03.jpg, papa_rubil_drova_rabota02.jpg, syn_spal_doma_rabota01.jpg и ещё последний файл в своей группе отличается существенно в своем размере от других. Может как-то ещё поможет в сортировке и удалении. |
Цитата:
|
в большую, но лучше удалять по названию. Если есть возможность, тогда два отдельных скриптa по двум признакам. Я думаю, что удаление за признаком размера будет сложнее чем по названию.
|
Powershell
Код:
cd D:\temp\test |
CMD по имени
Код:
@Echo Off во втором For |
слегка вклинюсь: меня тут реакция командного процессора M$ на простую задачу ввела в задумчивость. А именно: попросил зачистить темповские хвосты от rar'а, вида __rar_<цифры>.<цифры>, на всём диске, где намусорил, собака. Ничтоже сумняшеся, дал команду
del x: /f /s /q "__rar_*" Побёг лог убиваемого, который мне намекнул на то, что на самом деле всё совсем не так, как в реальности: эта дура стала сносить всё подряд, вне зависимости от типа, пути и имени файла. Вопрос: WHY??? ЗЫ: несмертельно, заодно увидел пару лишних папок в логе, приберу с архива, но по факту - непонятно. |
ShaddyR,
Цитата:
Команда del x: /f /s /q "__rar_*" удалит сначала X:, затем "__rar_*". Для сей команды порядок ключей и имён/масок файлов/каталогов не важен. |
У ShaddyR подпись нужно сменить на "Кирпичных Дел Мастер".
|
Цитата:
Тоже не вяжется: Цитата:
Цитата:
> Захаров, тебе лично могу организовать юбилейную подарочную перманентную подпись БАЛАБОЛ. Не желаешь? Есть что по сути сказать? |
ShaddyR, это не так работает.
1. Команда del принимает в качестве аргументов множественные имена файлов/масок: del /?
Код:
Удаление одного или нескольких файлов. В указанном примере таких аргументов два: «x:» и «"__rar_*"». 2. «x:» в данном контексте означает: «все файлы текущего каталога диска x:», поскольку, коль ни имя файла, ни маска файлов не заданы — к пути «x:» применяется умолчальная маска «*.*». Если специально текущий каталог для диска не менялся — им будет по умолчанию корневой каталог. Отсюда — фактически применяется такое: «x:\*.*». 3. И токмо опосля пытается найти и удалить файлы по маске «__rar_*» в текущем каталоге текущего диска. В общем, как всегда: умолчания — зло. |
Цитата:
1.настоящий мастер не станет заниматься копипастом кода, не осмыслив его содержимое, а значит не будет постить сообщения подобные этому: Цитата:
3.отсутствие самоиронии (и как следствие, чувство юмора) обычно указывает на озлобленность человека (главным образом из-за жизненных неудач) 4.злоупотребление положением модератора, в частности угрозы Цитата:
|
Цитата:
|
Цитата:
Цитата:
> Захаров, Скрытый текст
строить из себя психолога будешь в другом месте, здесь ни конференция вообще, ни раздел или тема в частности не подходят. Остальные инсинуации - следствие твоей (само)уверенности в том, что ты что-то знаешь обо мне и много о людях. В двух словах - вообще мимо, во всех "аргументах". Почему - можешь попробовать применить свою аналитику на себя - может, чего узнаешь нового. Это же касается и вымышленной "угрозы" - перечитай это сообщение заново, оно содержит ответ и на этот "вопрос". Если желаешь поспорить и доказать, как ты немеряно крут в понимании других - ЛС к твоим услугам, там же я тебе все расскажу более подробно... если захочешь ;)
|
ShaddyR, в любом случае, это было ещё до MS DOS.
|
Цитата:
Если заглянуть в хелп, там указано: Цитата:
В общем, переходите на powershell, для таких задач он более вменяем, с точки зрения конкретных настроек и кроме того, существует возможность везде явно отделять каталоги от файлов. |
Цитата:
|
Захаров,
Скрытый текст
не переигрывай - умные слова тебе не идут. Попытка разглядеть несуществующее и акцентировать внимание на несущественном показывает несостоятельность тебя как оппонента в споре. А намеренное несоблюдение правил ОПК при игнорировании намёков администрации ни к чему хорошему обычно не приводят. Еще раз настоятельно прошу перестать из себя корчить того, кем ты не являешься - здесь твои потуги в этом направлении никому не интересны. Если тебя не устраивает содержание сообщений участников (каковым в данном разделе являюсь и я) - воспользуйся доступными в интерфейсе средствами, для "поговорить" используй систему ЛС. Не добавляй своим ЧСВ работы местному модератору - ему, поверь, и без тебя есть чем заняться. Спасибо.
|
ShaddyR, о том и речь. Мой сарказм воспринят неадекватно с вашей, замечу, стороны. По части нарушения сводов форума, мат был с вашей стороны, пусть и в адрес третьих лиц. Так что тыкать правилами, не видя бревна в собственном глазу, по меньшей мере странно.
Что вы там себе ЧСВ, дело ваше личное. |
Добавлю пару слов специально для greg zakharov, чтобы он не думал, будто бан вызван чьей-то личной неприязнью. Бан не столько за одно конкретное нарушение, сколько за многократные рецидивы, по совокупности. Если greg zakharov раз за разом, явно или завуалированно хамит другим участникам форума, получая за это предупреждения и баны, то он мог бы уже наконец сообразить, что проблема не в окружающих, а в нём самом, как-то отрефлексировать ситуацию.
|
Время: 02:42. |
Время: 02:42.
© OSzone.net 2001-