Requisitos previos: PowerShell (por ejemplo : Windows), exiftool . Puede funcionar en otros sistemas operativos con PowerShell Core y con en exiftool
lugar de exiftool.exe
.
Estaba a punto de escribir una herramienta yo mismo cuando me encontré con la publicación de Alex Jensen :
Abra un terminal de PowerShell y copie y pegue a través de esto:
Para aquellos que no están acostumbrados a codificar: Las líneas que comienzan con un # marcan una línea de comentario. Como puede ver, más de la mitad de todo son comentarios, ¡así que mantenga la calma! :)
# Let exiftool collect all EXIF-data from a directory (recursively) and save it in a .CSV-file:
C:\temp\exiftool.exe "Z:\Pics" -csv -r -ext NRW -ext CR2 -ext JPG -ISO -ISOSetting -Aperture -ExposureTime -Model -Lens -FocalLength -LensID -ExposureCompensation -MeteringMode -Flash -FocusMode -AFAreaMode -CreateDate > c:\temp\all_exif.csv
# Note: C:\temp\exiftool.exe ... path to your exiftool.exe
# Note: Z:\Pics ... path to your pictures
# Note: C:\temp\all_exif.csv ... basically any place on your computer.
# Note: -ext can be adapted (e.g. add -ext ARW and remove -ext CR2)
# Note: It gets a lot of metadata, not only focal length. You could delete all but -FocalLength if you want to.
# You could now import that .CSV-file into Excel or any other spreadsheet program - or you keep going with your PowerShell window:
# Load the exifdata to a variable for further manipulation:
$exif = Import-Csv c:\temp\all_exif.csv
# Get information about focal length:
$exif | Group-Object Focallength -NoElement
# Different other metadata:
# Apertures used:
$exif | Group-Object Aperture -NoElement
# Show all lenses ever used:
$exif | Group-Object LensID | Select-Object Name | Sort-Object Name
# Find the most used combination of ISO and Aperture:
$exif | Group-Object ISO, Aperture | Sort-Object count -Descending | Select-Object Count, name