Недавно у меня была похожая потребность.
В частности, я хотел, чтобы переместить и переименовать файлы, основываясь на дате изображение было принято, следующим образом :
E:\Pictures\DSC_001.jpg
чтобы E:\Pictures\2009\2009-04-23\2009-04-23-14h56m28.jpg
E:\Pictures\DSC_002.jpg
к E:\Pictures\2009\2009-04-23\2009-04-23-15h32m14.jpg
E:\Pictures\DSC_003.jpg
вE:\Pictures\2010\2010-02-22\2020-02-22-14h56m28.jpg
Мотивы для меня для этой структуры:
- У меня было 6000 файлов в папке E: \ Pictures. Несмотря на то, что я использовал Namexif переименовать все из них в формате YYYY-MM-DD-HHhMMmSS.jpg, я бы еще 800 + подпапок картинки, если бы я не использовал год папки.
- Если бы я использовал формат 2009/12/31 / 2009-12-31-23h59m59s.jpg, было бы утомительно перемещаться по папкам (в некоторые месяцы я делал снимки только в несколько дней)
- Формат 2009-12 / 2009-12-31-23h59m59s.jpg по-прежнему создавал бы слишком много подпапок в папке E: \ Pictures, а также в 2009-12 и другие более популярные месяцы (все эти многочисленные снимки, сделанные 24 и 31 числа Декабрь все будут перечислены непосредственно в папке 2009-12).
YMMV.
Потратив час на то, чтобы опробовать различные графические программы, основанные на пользовательском интерфейсе, в конечном итоге то, что выполнило работу именно так, как мне нужно, было ExifTool.
Вот шаги:
- Загрузите ExifTool .
- Установите это:
- Если вы используете Windows, вам следует:
- распакуйте архив,
- переименуйте exiftool (-k) .exe в exiftool.exe
- Переместите exiftool в какую-либо папку в вашей переменной PATH (я использую папку C: \ Windows), чтобы ее можно было использовать в любой папке, в которой вы сейчас находитесь (я использую C: \ Windows).
- Если вы на Mac, просто установите приложение.
- Если вы используете Windows, вам следует:
- Откройте свой терминал:
- В Windows нажмите WinRи введите cmdEnter ,
- На Mac нажмите cmdspaceи введите термин↩
- Перейдите в папку, где находятся ваши фотографии. На Mac вы наберете что-то вроде
cd /Volumes/MyUSBDrive/Pictures
. В Windows вы наберетеE:
Entercd Pictures
. Конечно, используйте здесь свой собственный путь к папке. - Теперь запустите exiftool и дайте ему выполнить свою работу:
exiftool -d %Y/%Y-%m-%d/%Y-%m-%d-%Hh%Mm%S.%%e "-filename<datetimeoriginal" .
(точка в конце указывает на текущий каталог)
По сути, вы говорите exiftool, чтобы вы считали информацию о дате съемки (datetimeoriginal) из файла изображения и использовали эту информацию для переименования файла, используя формат YYYY / YYYY-mm-dd / YYYY-mm-dd-HHhMMmSS.ext. Обратите внимание, что в указанном нами формате файла есть косые черты - это приводит к тому, что файл перемещается в соответствующую структуру папок, которая создается на лету.
С помощью этой утилиты вы можете перемещать и / или переименовывать файлы любым удобным для вас способом. Если ваши требования отличаются от моих, просто обратитесь к этой странице, которая содержит хорошие примеры, из которых я получил командную строку, которую в конечном итоге использовал.