У меня есть каталог DCIM
содержащий фотографии, названные IMG_{NNNN}.JPG
с iPhone и фотографии, названные DSC_{NNNN}.JPG
от Xperia.
Этот каталог является результатом слияния нескольких каталогов, в которых были разные фотографии с одинаковыми именами (например, iPhone 3GS ' .../DCIM/IMG_0001.JPG
, iPhone 4S ' .../DCIM/IMG_0001.JPG
и iPhone 5s ' .../IMG_0001.JPG
разные фотографии или Xperia Z3+, прежде чем восстановить .../DCIM/100ANDRO/DSC_0001.JPG
и Xperia Z3+ после восстановления .../DCIM/100ANDRO/DSC_0001.JPG
разные фото). Чтобы переименовать фотографии, чтобы ни одна не перезаписывалась другой, я искал «дыры» в списке (например, если PIC10.JPG
был удален, но PIC9.JPG
и PIC11.JPG
все еще здесь, у меня есть дыра, чтобы я мог переименовать второй PIC1.JPG
в PIC10.JPG
поэтому я не теряю его и не получаю грязный каталог, содержащий файлы, похожие на двойные по названию).
Я хочу сохранить текущую номенклатуру для фотографий, таких как фотографии iPhone, в IMG_{NNNN}.JPG
и Xperia в DSC_{NNNN}.JPG
.
Я хочу переименовать фотографии в том порядке, в котором они были взяты из данных EXIF (например, если в приведенном выше примере PIC1-2.JPG
который пошел PIC10.JPG
был застрелен перед PIC1.JPG
тогда это PIC10.JPG
становится PIC1.JPG
и все последующие фотографии переименовываются в PIC{N+1}.JPG
или PIC{N+X}.JPG
если x фотографий появятся в начале списка) - на первом месте стоит exifless (то есть первое найденное exifless фото становится PIC1.JPG
, второй становится PIC2.JPG
т.д.).
Я не хочу переименовывать фотографии иначе, как с их первоначальной номенклатурой (то есть, нет { Date } iPhone photo.jpg
или Xperia photo from { Date }.jpeg
).
Есть ли способ сделать это просто? Я предпочел бы получить способ командной строки, чтобы сделать это, но даже сценарий Automator или комбинированный подход (например, сценарий Automator, вызывающий сценарий оболочки) подойдет просто так - до тех пор, пока вещь запускается, у меня нет прикоснуться к клавиатуре, пока работа не будет завершена.
Спасибо.