Điều kiện tiên quyết: PowerShell (vì vậy: Windows), exiftool . Có thể hoạt động trên các HĐH khác với PowerShell Core và exiftool
thay vì exiftool.exe
.
Tôi chuẩn bị tự viết một công cụ khi bắt gặp bài của Alex Jensen :
Mở một thiết bị đầu cuối PowerShell và sao chép và dán theo cách của bạn thông qua điều này:
Đối với những người không được sử dụng để mã: Các dòng bắt đầu bằng # đánh dấu một dòng nhận xét. Như bạn có thể thấy, hơn một nửa mọi thứ là bình luận, vì vậy hãy bình tĩnh! :)
# 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