Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Переименование файлов - delims (http://forum.oszone.net/showthread.php?t=217743)

sLiDeR-X 12-10-2011 10:12 1771591

Переименование файлов - delims
 
Есть скрипт:
Код:

@echo off

set dirictory=s:\_Рекламации и акты (отв. ПетровАМ)\2011\Дальневосточная\Хабаровск0\

pushd %dirictory%

dir /B >>%systemdrive%\files.lst

echo.
for /f "tokens=1-5,* delims= ." %%a in (%systemdrive%\files.lst) do rename "%%a %%b %%c %%d %%e %%f" "%%a %%c %%d %%e %%b %%f" && echo Переименование  %%a %%b %%c %%d %%e %%f  ---  %%a %%c %%d %%e %%b %%f
echo.

del /Q %systemdrive%\files.lst

pause
exit

И есть список файлов:
5098 АВР (12.09.11).jpg
ТО АВР (21.09.11).jpg
5997 АВР (06.09.11).jpg
5997 АИ (06.09.11).jpg

Скрипт не работает :( Без . переименование работает. Можно прописать разделитель (, тогда будет 3 секции, но это тоже спецсимвол. Как их обрабатывать?
Мне нужно получить следующий вид: 5098 (12.09.11) АВР.jpg

Спасибо.

kiripanda 12-10-2011 11:06 1771627

Код:

@echo off &setlocal enableextensions &chcp 1251 >nul

set "dirictory=s:\_Рекламации и акты (отв. ПетровАМ)\2011\Дальневосточная\Хабаровск0\"

pushd "%dirictory%"
echo.
for /f "tokens=1-3,* delims=() " %%a in ('dir /B/a-d') do rename "%%a %%b (%%c)%%d" "%%a (%%c) %%b%%d"
echo.
popd

pause



Время: 22:21.

Время: 22:21.
© OSzone.net 2001-