Yabuti
Всем привет!
Кто понимает в MS-DOS batch, пожалуйста подскажите, как можно сделать, чтобы при переносе файлов в папки, они принимали значение переменной i.
Рабочий код раскидывания по папкам (по три файла в каждую папку):
Код:
@echo off&chcp 1251>nul
echo Перемещает по 3 .jpg файла из текущей в каждую вложенную папку по порядку.
setlocal enableextensions enabledelayedexpansion
for /F "delims=" %%c in ('dir /AD /B/ON') do (
set i=0
for /F "delims=" %%a in ('dir *.jpg /B/ON') do (
if !i! LSS 3 (move "%%a" "%%c\"&set /A i=i+1)
)
)
Если я правильно понимаю, нужно сделать что-то вроде:
if !i! LSS 3 (move "%%a" "
!i!.jpg\"&set /A i=i+1)
, чтобы текущий переносимый файл брался с именем переменной i.
Пытался методом научного тыка по-всякому, но не хочет.
В результате нужно получить файлы в папках, где они будут с именами 1.jpg, 2.jpg, 3.jpg - и так в каждой папке три ее файла переименуются при переносе.
Заранее огромное спасибо!