Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение файлов (jpg) по их количеству

Ответить
Настройки темы
CMD/BAT - Перемещение файлов (jpg) по их количеству

Старожил


Сообщения: 169
Благодарности: 4

Профиль | Отправить PM | Цитировать


Здравствуйте,

Подскажите пожалуйста можно ли на bat реализовать следующее:

Имеем папку PICS, в ней много папок с файлами jpg Пример: ( D:\PICS\2011 D:\PICS\2010 D:\PICS\1 ), и в каждой папке разное количество файлов *.jpg, необходимо проверить сколько файлов jpg в каждой папке если 500 файлов jpg, то нужно в разделе D:\NEW\ создать папку с именем исходной папки (в которой были файлы) и уже в ней создать новую, далее перенести в нее эти 500 штук файлов jpg Пример: D:\NEW\2011\1\, далее заново проверяем папки, и ведем поиск если опять набралось 500 опять переносим но уже во 2 папку в Пример: D:\NEW\2011\2, если файлов меньше 500 то переносим оставшиеся также в новую папку в разделе D:\new\2011\ и так со всеми папками в папке PICS.

Заранее спасибо.

Отправлено: 09:13, 27-04-2011

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off
SETLOCAL EnableDelayedExpansion

set $SRC=D:\PICS
set $DST=D:\NEW

for /d %%a in ("%$SRC%\*") do (set/a $n=-1
for /f "delims=" %%b in ('dir/b/s/a-d "%%a\*.jpg"2^>nul') do (set/a $n+=1
set/a $m=1+!$n!/500
if not exist "%$DST%\%%~na\!$m!" md "%$DST%\%%~na\!$m!"
move/-y "%%b" "%$DST%\%%~na\!$m!\">nul
))

Последний раз редактировалось amel27, 27-04-2011 в 15:47. Причина: очепятка

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:11, 27-04-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1272
Благодарности: 1029

Профиль | Отправить PM | Цитировать


amel27, надо поменять местами выделенное, а то не отработает:
Код: Выделить весь код
for /d %%a in ("%$SRC%\*.jpg") do (set/a $n=-1
for /f "delims=" %%b in ('dir/b/s/a-d "%%a\*"2^>nul') do (set/a $n+=1
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:37, 27-04-2011 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


El Sanchez, тем страннее, что стоит "решено"

Отправлено: 16:20, 27-04-2011 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение файлов (jpg) по их количеству

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Поиск файлов и перемещение каталога djvall Скриптовые языки администрирования Windows 3 04-02-2011 09:32
CMD/BAT - [решено] Перемещение файлов по количеству из списка shadowbat Скриптовые языки администрирования Windows 9 29-08-2010 15:36
Delphi - Перемещение и удаление файлов по маске. Putin-mode Программирование и базы данных 1 21-06-2010 12:16
Разное - Перемещение файлов как вид дефрагментации sltt Microsoft Windows 2000/XP 12 01-03-2010 20:01
Разное - Задержка после закрытия файлов txt, jpg nikon161 Microsoft Windows 2000/XP 4 06-01-2010 23:58




 
Переход