Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


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

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


Цитата megaloman:
Код: Выделить весь код
Пояснение »
Код работает как нужно, благодарю!!!

Цитата Foreigner:
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion
for /f %%i in ('dir /b /on *.jpg') do set /a cnt=1%%~ni-100
ren 01.jpg 01.tmp
for /l %%i in (2,1,%cnt%) do (
set "old=0%%i"
set /a new=%%i-1
set "new=0!new!"
ren !old:~-2!.jpg !new:~-2!.jpg
)
set "cnt=0%cnt%"
ren 01.tmp %cnt:~-2%.jpg »
Код работает, задачу решает, хотя и в обратном порядке Т.е. "последний" движется в начало.
Благодарю за помощь!

Цитата Foreigner:
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion
for %%i in (*.jpg) do set /a cnt+=1
for /f %%i in ('dir /b *.jpg ^| sort') do (
set "new=0!cnt!"
ren "%%i" "!new:~-2!.tmp"
set /a cnt-=1
)
ren *.tmp *.jpg »
Этот код - не работает. Проблема в логике?

Цитата alpap:
Код: Выделить весь код
@echo off
for /f "delims= eol=" %%a in ('dir /a-d/b "katalog\*.jpg"^|sort /+2147483647') do set /a n+=1& cmd/v/c set "m=0!n!"^& ren "katalog\%%~nxa" "new!m:~-2!%%~xa"
exit /b
.
при следующем запуске, по идее, должно произойти обратное, не проверял. »
Код срабатывает правильно первый раз, затем - не работает.

Отправлено: 11:02, 08-04-2016 | #28