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

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

alexmoreman 27-11-2011 20:43 1804493

Пакетное переименование с создание сложных имён файлов
 
вот собственно поискав в интернете и если не ошибаюсь на этом форуме нашол генератор пароля и решил его приспособить для пакетной переименовки файлов (более 12000 файлов) но попробовав получается это сделать только по одному файлу (переименовка) тоесть необходимо каждый раз запускать bat для изменения имени одного файла.. помогите решить проблему я так понимаю решение остаётся за малым.. заранее спасибо..
Код:

SetLocal EnableDelayedExpansion
set I=15
set N=65
set CHAR=0123456789_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWQYZ
:LOOP
set /a R=%N%*%random%/32768
set NM=!CHAR:~%R%,1!%NM%
set /a I-=1
if %I% GTR 0 goto LOOP
for %%i in (*.jpg) do call ren "%%i" "%%NM%%.jpg"


Anonymоus 27-11-2011 21:46 1804545

Код:

@Echo Off
SetLocal EnableDelayedExpansion
:: Расширение файлов для переименования
Set ext=txt
:: Путь к папке с файлами
Set FPath=.

For /F "tokens=*" %%A In ('Dir "%FPath%\*.%ext%" /B /A-D') Do (
Call :RndGen
Ren "%FPath%\%%A" "!NM!.%ext%"
)
Pause && Exit

:RndGen
Set NM=
Set I=15
Set N=65
Set Charset=0123456789_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWQYZ
:RndGenLoop
Set /A R=%N%*%Random%/32768
Set NM=!Charset:~%R%,1!%NM%
Set /A I-=1
If %I% GTR 0 GoTo RndGenLoop

Стандартное напоминание: если в именах файлов предполагается наличие русских букв - сохраняйте в 866 кодировке.

gora 27-11-2011 22:41 1804586

Цитата:

Цитата Anonymоus
Set N=65»

Уточнение
Код:

Set N=63

alexmoreman 27-11-2011 23:57 1804634

Anonymоus, спасибо большущее, работает как часики.

Anonymоus 28-11-2011 02:27 1804678

gora, все верно, и правда, 63. Скопировал из первого поста, не глядя.


Время: 19:13.

Время: 19:13.
© OSzone.net 2001-