Szybka i wygodna zmiana nazw NEFów.

Fast and easy renaming of NEFs.

Kiedyś, bardzo dawno temu, obiecałem, że na tym blogu będą się pojawiać głównie wpisy dotyczące Linuksa… No więc czas dodać pierwszy! No dobrze – znowu nawiążemy do fotografii ale od trochę innej strony.

Some time ago I promised that this blog would be about Linux… Well, then it’s time for my first post related to it! Ok, it’s photography related too but from a little different side.

Jako podstawowego systemu używam Linuksa, a więc i zdjęcia obrabiam na tym systemie. Z biegiem lat zrobiłem sobie kilka usprawnień, które pomagają mi w pracy ze zdjęciami. Poniżej jeden z nich – prosty jednolinijkowiec, „oneliner”, w shellu, który pozwala mi szybko zmienić nazwy plików NEF po skopiowaniu ich na dysk.

Linux is my base system at home, so also the photos are being processed on it. Through the year I made myself a few aids that help me when I’m working with photos. One of them is the below shell oneliner that allows me to quickly change NEF file names after copying them to my disk.

Nazwy _DSC1234.NEF tworzone przez Nikony nie są zbyt przyjazne na co dzień. Problem pojawia się zwłaszcza kiedy dojdziemy do _DSC9999.NEF. Następny plik będzie miał nazwę _DSC0001.NEF i może się okazać, ze pliki są wyświetlane w niewłaściwej kolejności. Poniższe polecenie wyciąga z EXIFa datę i godzinę zrobienia zdjęcia i wpisuje je zamiast ciągu znaków „_DSC” – na przykład 20210224_120052_9936.NEF. Po spojrzeniu na nazwę mogę od razu stwierdzić, że zdjęcie zostało zrobione 24 lutego 2021 roku o godzinie 12:00:52. Numer sekwencyjny zdjęcia zostawiam bo aparaty potrafią robić kilka zdjęć na sekundę, więc albo kilka plików musiałoby mieć tą samą nazwę (co jest niemożliwe), albo trzeba byłoby znaleźć inny sposób ich rozróżniania, a tak bez zbędnych ceregieli jest przejrzyście.

for zdjecie in _DSC*.NEF; do mv ${zdjecie} $(echo ${zdjecie} | sed s/_DSC/$(exiftool -createdate ${zdjecie} | gawk 'BEGIN{a[4]=a[5]} {for(x in a)gsub(":","",$x); print $4"_"$5}')_/g); done

Names like _DSC1234.NEF that are created by Nikons are not very friendly in every day use. There is especially a problem when you get to _DSC9999.NEF. The next file will be named _DSC0001.NEF and files may be displayed in a wrong order. Above command extracts creation date and time from EXIF and puts them in place of „_DSC” – for example you can get 20210224_120052_9936.NEF. After a look on the name I can immediately tell that the photo was take on 24 February 2021 at 12:00:52. I leave the sequential number of a photo because cameras can take several photos during a second, so either a few files would have to have the same name (what is impossible) or I would need to find another way to differentiate the names – but this way is very clean and works for me.

Co o tym sądzicie? Przydatna rzecz czy niekoniecznie? A Wy zmieniacie nazwy plików czy zostajecie przy domyślnych? Dajcie znać w komentarzach.

What do you think? Is that oneliner helpful on not? Do you change filenames or do you stick to the default ones? Let me know in the comments.

3 myśli w temacie “Szybka i wygodna zmiana nazw NEFów.”

  1. O! Pan Informatyk! 😉

    To ja zaproponuję ciut krótsze polecenie:
    $ exiv2 -r „%Y%m%d_%H%M%S_:basename:” mv *.ORF

    U mnie rozszerzenie „ORF”, bo mam Olympusa. W Fedorze, której używam, programik `exiv2` jest instalowany standardowo (`exiftool` trzeba doinstalować).

    Ale muszę przyznać, że sam nie zmieniam nazw plików. Zdjęcia importuję na dysk za pomocą aplikacji Shotwell, która sama układa zdjęcia w katalogach z podziałem na lata, miesiące i dni.

    Zdjęcia niestety obrabiam pod Windowsem (specjalnie po to kupiłem drugi komputer). Kiedyś DxO rozdawało swoją aplikację OpticsPro (aktualnie nazywa się PhotoLab), więc pobrałem, spróbowałem i teraz uważam, że to najlepsza aplikacja do obsługi rawów.

    Pod linuksem próbowałem RawTherapee, Gimpa, Darktable, BibblePro (który wykupił Corel i przemianował na After Shot Pro) i wiele innych. Niestety nic nie dawało na wejście takiego zdjęcia, jakiego bym oczekiwał. W DxO OpticsPro nie ruszam nic albo lekko 2-3 suwaczki i praktycznie mam takie zdjęcie, jakiego oczekuję.

    1. Dobre! Nie znałem tego narzędzia. 🙂

      Ja używam Darktable. Potężny program, ale z wydania na wydanie ma coraz mniej intuicyjny interfejs. Ciekawe kiedy stwierdzę, że mam dość. 😉

      1. Dla mnie Darktable jest koszmarny. Może dla kogoś, kto „tworzy” fotografie jest dobrym narzędziem. Ale dla mnie, co najwyżej rozjaśniającego/przyciemniającego zdjęcie, jest przytłaczający. Już wolę RawTherapee, nawet mimo że generuje dziwne cyfrowe „ziarno” w jpegach.

        Ale ostatnim moim odkryciem jest Filmulator (filmulator.org) – jest wersja na windowsa i linuksa. Podstawowa rzecz – ma mało suwaczków. 😉 Choć nie wiem, po co wpakowali do niego organizowanie zdjęć, import i tym podobne rzeczy… Program ma potencjał, zobaczymy jak się rozwinie dalej.

        Jak na razie nie widzę alternatywy dla DxO, nawet w tak starej wersji, z jakiej ja korzystam..

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *