Что нового

Отсортировать и переименовать фотографии

Oldmen

Новичок
Сообщения
4
Репутация
0
Имеется папка с фотографиями (исходники), к этой папке используя программу Akvis, применяются разные эффекты по очереди.
Все фотографии с эффектами сохраняются в другую папку с именами по номеру эффекта.
пример:
<эффект-1> a01,a02,a03
<эффект-2> b01,b02,b03
<эффект-3> c01,c02,c03

Все они лежат в алфавитном порядке. Чтобы визуально посмотреть как эффект меняется, приходиться вручную сортировать в таком порядке:
пример:
<эффект-1> a01,b01,c01
<эффект-2> a02,b02,c02
<эффект-3> a03,b03,c03

Проблема в том, что фотографий много, заниматься вручную сортировкой умапомрачительно
Прошу оказать посильную помощь в виде плагина или программы.
 

IMStrelcov

CTPEJIbLLOB
Сообщения
141
Репутация
22
Я правильно понял?
есть:
эффект1 файл1
эффект1 файл2
эффект2 файл1
эффект2 файл2

нужно
эффект1 файл1
эффект2 файл1
эффект1 файл2
эффект2 файл2

если так, то поподробнее какие именно имена эффектов и файлов получаются, нужно сначало найти закономерность, чтобы знать где начинается название эффекта, а где имя файла.
 
Автор
O

Oldmen

Новичок
Сообщения
4
Репутация
0
Для ясности привожу картинку, столбец слева - это как есть в "командере", справа - вот так должно быть.
Сообщение автоматически объединено:

пример-000.jpg
Сообщение автоматически объединено:

Для ясности привожу картинку, столбец слева - это как есть в "командере", справа - вот так должно быть.
Используются именно эти имена.
Сообщение автоматически объединено:

пример-000.jpg
 

IMStrelcov

CTPEJIbLLOB
Сообщения
141
Репутация
22
Код:
#NoTrayIcon
#RequireAdmin

#cs
переименует все файлы

из

a 1
a 2
b 1
b 2

в

1 a
1 b
2 a
2 b

если не менять значение в переменной $Dir то,
можно скомпилировать и перетаскивать папку на полученный exe-файл,
если не компилить то поменяй значение в $Dir на нужную папку.
#ce

;папка где лежат файлы, также обработает и файлы в подпапках
$Dir = $CmdLine[$CmdLine[0]]

If Not FileExists($Dir) Then Exit
ListAddFile_($Dir)
MsgBox(0, '', 'Все файлы переименованы.')

Func ListAddFile_($_File)
    Local $_ListFile = FileFindFirstFile($_File& '\*.*')
    Local $_Name
    While 1
        $_NextFile = FileFindNextFile($_ListFile)
        If @error Then
            ExitLoop
        EndIf
        If @extended Then
            ListAddFile_($_File& '\'& $_NextFile)
        Else
            $_Name = StringRegExpReplace($_NextFile, '([A-zА-яЁё]*)([^A-zА-яЁё0-9]*)?([0-9]*)(\..*)', '$3 $1$4')
            FileMove($_File& '\'& $_NextFile, $_File& '\'& $_Name, 9)
        EndIf
    WEnd
    FileClose($_ListFile)
EndFunc
 
Автор
O

Oldmen

Новичок
Сообщения
4
Репутация
0
Очень хорошо, спасибо, но я не знаю кому этот текст скормить. Я не програмист, что с этим делать, чтобы работала?
Сообщение автоматически объединено:

Можно как-то сделать в виде файла, где можно задавать папки?
 

IMStrelcov

CTPEJIbLLOB
Сообщения
141
Репутация
22
переносишь на файл папку с файлами которые нужно переименовать, и только папку с файлами которые нужно переименовать, подпапки тоже обработаются. интерфейс делать нет времени, так что только сообщение в конце о завершении.
 

Вложения

Автор
O

Oldmen

Новичок
Сообщения
4
Репутация
0
Круто!!!! Вы гигант мысли!!! В пару секунд перелопатил тысячи фоток. Спасибо!!!
 
Верх