Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Sortowanie zdjęć w katalogach wg daty zrobienia zdjęcia (EXIF)

4,395 views
Skip to first unread message

petermas

unread,
Mar 28, 2009, 12:11:01 PM3/28/09
to
Z nudów napisałem programik do sortowania zdjęć wg dat zrobienia.
Wyrafinowane to to nie jest, robi dokładnie to co ma robić. Układa
zdjęcia wg dat zrobienia zapisanych w EXIF. Może się komuś przyda.
Testowałem na fotkach z kodaka i canona, powinien działać poprawnie
niezależnie od marki. Potrzebuje zainstalowanej maszyny wirtualnej
Java w systemie ale za to działa na wszystkich OS'ach.
http://tnij.org/c459

Andrzej Lawa

unread,
Mar 28, 2009, 5:07:04 PM3/28/09
to
petermas pisze:

> Z nudów napisałem programik do sortowania zdjęć wg dat zrobienia.
> Wyrafinowane to to nie jest, robi dokładnie to co ma robić. Układa
> zdjęcia wg dat zrobienia zapisanych w EXIF. Może się komuś przyda.

Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
"sortuj według daty utworzenia" ;->

Arczi

unread,
Mar 28, 2009, 7:26:18 PM3/28/09
to
On 2009-03-28 22:07, Andrzej Lawa wrote:
> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
> "sortuj według daty utworzenia" ;->

Albo po nazwie czy rozmiarze pliku... No i co w związku z tym poza
wymądrzaniem się? ;->

--
Pozdrawiam
Arczi

qunio

unread,
Mar 28, 2009, 9:54:27 PM3/28/09
to

jestes pewien ze data utworzenia pliku na to to samo...?

Henry(k)

unread,
Mar 29, 2009, 3:02:14 AM3/29/09
to
Dnia Sat, 28 Mar 2009 18:54:27 -0700, qunio napisał(a):

>> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
>> "sortuj według daty utworzenia" ;->
>
> jestes pewien ze data utworzenia pliku na to to samo...?

Winda czyta datę zrobienia zdjęcia z exif, trzeba sobie tylko dołożyć do
kolumn, posortować, a potem na pierwszym dać "zmień nazwę". Fakt że kolejne
numeruje sekwencją w nawiasie, nazwa (n).jpg, ale do potem jakikolwiek
program to i tak wyświetlając po nazwie wyświetli poprawnie.

Pozdrawiam,
Henry

--
FAQ prf: http://www.prf-faq.prv.pl
FAQ prfc: http://www.prfc-faq.prv.pl
Fotografia tradycyjna: http://www.aparaty.tradycyjne.net

petermas

unread,
Mar 29, 2009, 4:56:29 AM3/29/09
to
On 29 Mar, 08:02, "Henry(k)"

<moj_adres_to_henrykg@na_serwerze_gazeta.pl> wrote:
> Dnia Sat, 28 Mar 2009 18:54:27 -0700, qunio napisał(a):
>
> >> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
> >> "sortuj według daty utworzenia" ;->
>
> > jestes pewien ze data utworzenia pliku na  to to samo...?
>
> Winda czyta datę zrobienia zdjęcia z exif, trzeba sobie tylko dołożyć do
> kolumn, posortować, a potem na pierwszym dać "zmień nazwę". Fakt że kolejne
> numeruje sekwencją w nawiasie, nazwa (n).jpg, ale do potem jakikolwiek
> program to i tak wyświetlając po nazwie wyświetli poprawnie.
>
> Pozdrawiam,
>                   Henry

I wyobraź sobie że masz zbiory z kilku lat i chcesz je poukładać w
katalogach wg dat zrobienia zdjęć. Zrób to wykorzystując to co "winda"
oferuje...
Ja akurat kataloguję zdjęcia wg dat ich zrobienia i do tego właśnie
słuzy ten programik.

petermas

unread,
Mar 29, 2009, 5:00:25 AM3/29/09
to
On 28 Mar, 23:07, Andrzej Lawa <alawa_n...@lechistan.SPAM_PRECZ.com>
wrote:

Wiem, ale to nie to samo.
Poczytaj to zrozumiesz różnicę: http://pl.wikipedia.org/wiki/EXIF

Pawel W.

unread,
Mar 29, 2009, 5:14:38 AM3/29/09
to

Hmm..
CamToPC robi to bardzo zgrabnie od razu tworząc foldery z datami(foldery
wg. dnia zrobienia zdjęcia lub wg. miesiąca lub roku).
TotalCommander natomiast zmienia hurtowo nazwy plików wg. danych exif.
Niestety nie czyta RAWów. Więc chyba zrobiłeś syzyfową pracę ;)


Pozdrawiam,
Paweł W.
--
Padł mi dysk i wszystkie moje sygnaturki poszły do cyfrowego raju :(((

Habeck Colibretto

unread,
Mar 29, 2009, 5:48:39 AM3/29/09
to
Dnia 28.03.2009, o godzinie 18.11.01, na pl.rec.foto.cyfrowa, petermas
napisał(a):

Fajne. Przydałoby mi się z 5 lat temu. :) Teraz aparat sam mi wrzuca w
foldery z datą.

--
Pozdrawiam,
*Habeck*
/Każda rzecz ma dwie strony. Fanatycy widzą tylko jedną/
- Schutzbach

Andrzej Lawa

unread,
Mar 29, 2009, 11:34:12 AM3/29/09
to
petermas pisze:

>> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
>> "sortuj według daty utworzenia" ;->
>
> Wiem, ale to nie to samo.

Zależy. jak przy kopiowaniu zmieniają ci się daty, to faktycznie.

> Poczytaj to zrozumiesz różnicę: http://pl.wikipedia.org/wiki/EXIF

Wow. EXIF... Nie wiedziałem, że coś takiego istnieje.

PS: http://pl.wikipedia.org/wiki/Sarkazm

Andrzej Lawa

unread,
Mar 29, 2009, 11:29:03 AM3/29/09
to
Arczi pisze:

No i w związku z tym - po co wyważać otwarte drzwi?

Michal Tyrala

unread,
Mar 29, 2009, 1:38:48 PM3/29/09
to
On Sun, 29 Mar 2009 17:34:12 +0200, Andrzej Lawa wrote:
> >> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
> >> "sortuj według daty utworzenia" ;->
> >
> > Wiem, ale to nie to samo.
>
> Zależy. jak przy kopiowaniu zmieniają ci się daty, to faktycznie.

RAW nie robisz, prawda? ;-)

--
Michał http://kbns.digart.pl/

wiesiu jest spamtrapem. ja jestem kbns

Arturb

unread,
Mar 29, 2009, 3:53:08 PM3/29/09
to
> Z nudów napisałem programik do sortowania zdjęć wg dat zrobienia.

Jak dołożysz jeszcze możliwość nazywania folderów z nazwy aparatu z
EXIF'a oraz większą elastyczność z nazwami katalogów (np: YYYY_MM/
x.jpg) - jak w DowlnoaderPro to biorę :) Tak trzymać i nieprzejmować
się malkontentami!!!
AB

petermas

unread,
Mar 29, 2009, 4:03:47 PM3/29/09
to

> Zależy. jak przy kopiowaniu zmieniają ci się daty, to faktycznie.
>
Zacznij pisać dużymi literami bo nie rozumiem co masz do przekazania.

Andrzej Lawa

unread,
Mar 30, 2009, 2:48:28 PM3/30/09
to
petermas pisze:

>> Zależy. jak przy kopiowaniu zmieniają ci się daty, to faktycznie.
>>
> Zacznij pisać dużymi literami bo nie rozumiem co masz do przekazania.

Mi przy kopiowaniu nie zmieniają się (chyba że wyrażę taką chęć)
atrybuty pliku - z datą utworzenia włącznie. A ponieważ przy robieniu
zdjęć aparat nadaje im czas utworzenia z chwili zrobienia zdjęcia -
sortowanie mam od ręki.

Czego jeszcze nie rozumiesz?

Andrzej Lawa

unread,
Mar 30, 2009, 2:52:10 PM3/30/09
to
Michal Tyrala pisze:

> On Sun, 29 Mar 2009 17:34:12 +0200, Andrzej Lawa wrote:
>>>> Umm... Wiesz, w normalnym systemie operacyjnym menedżer plików ma opcję
>>>> "sortuj według daty utworzenia" ;->
>>> Wiem, ale to nie to samo.
>>
>> Zależy. jak przy kopiowaniu zmieniają ci się daty, to faktycznie.
>
> RAW nie robisz, prawda? ;-)

Robię.

Aaa! Masz na myśli sytuację, kiedy masz plik pochodny po przetworzeniu
(nie wnikam, jaki był źródłowy), a nie tylko skopiowany - więc z nową
datą utworzenia?

Data utworzenia w EXIF jest zawsze kopiowana z pliku źródłowego?

Michal Tyrala

unread,
Mar 31, 2009, 4:36:02 AM3/31/09
to
On Mon, 30 Mar 2009 20:52:10 +0200, Andrzej Lawa wrote:
> Aaa! Masz na myśli sytuację, kiedy masz plik pochodny po przetworzeniu
> (nie wnikam, jaki był źródłowy), a nie tylko skopiowany - więc z nową
> datą utworzenia?

Bingo!

> Data utworzenia w EXIF jest zawsze kopiowana z pliku źródłowego?

W EXIFie jest kilka pól date/time.

Moje doswiadczenie pozwala stwierdzic, ze soft do raw nie psuje daty
naswielenia zdjecia:

[kbns@kbns kbns]$ jhead knoty/2008080x-woodstock/CRW_5402-01.jpg
File name : knoty/2008080x-woodstock/CRW_5402-01.jpg
File size : 234420 bytes
File date : 2008:09:14 15:33:29
Camera make : Canon
Camera model : Canon EOS 300D DIGITAL
Date/Time : 2008:08:01 10:38:46
[...]

pozdrawiam,

petermas

unread,
Mar 31, 2009, 2:54:26 PM3/31/09
to
On 31 Mar, 10:36, Michal Tyrala <wie...@bdm.com.pl> wrote:
> On Mon, 30 Mar 2009 20:52:10 +0200, Andrzej Lawa wrote:
> >  Aaa! Masz na myśli sytuację, kiedy masz plik pochodny po przetworzeniu
> >  (nie wnikam, jaki był źródłowy), a nie tylko skopiowany - więc z nową
> >  datą utworzenia?
>
> Bingo!
>
> >  Data utworzenia w EXIF jest zawsze kopiowana z pliku źródłowego?
>
> W EXIFie jest kilka pól date/time.
>

No to sporo się wyjaśniło. Kopiowanie plików może "psuć" daty
systemowe jak data utworzenia pliku - to jest normalne, dla plików
zdjęć istotna jest data zapisana w EXIF i ta się nie zmienia w
przypadku kopiowania, chyba że jawnie odpowiednim softem wyczyścimy te
dane (np Irfanview pozwala na usunięcie EXIFa podczas konwersji).
Andrzej, porównaj jeszcze u siebie datę utworzenia z datą zrobienia
zdjęcia - jesli używasz Windy to oba parametry można sprawdzić jeśli
wyświetlisz pliki jako listę. Nie jestem przekonany że będą sobie
równe.

petermas

unread,
Mar 31, 2009, 2:58:22 PM3/31/09
to

> Andrzej, porównaj jeszcze u siebie datę utworzenia z datą zrobienia
> zdjęcia - jesli używasz Windy to oba parametry można sprawdzić jeśli
> wyświetlisz pliki jako listę. Nie jestem przekonany że będą sobie
> równe.

Nie doczytałem, faktycznie jeśli Twój aparat zapisuje atrybut
utworzenia pliku równy dacie zrobienia to już masz pół drogi za sobą,
ale podejrzewam że jak zrobisz kopię tego pliku to Ci się data
zrobienia ustawi na bieżącą. Data zrobienia zapisana w EXIF zostanie
zawsze taka jaka była.

petermas

unread,
Mar 31, 2009, 3:01:49 PM3/31/09
to

Dzięki za konstruktywne uwagi, jak będę miał trochę czasu to zrobię
małe zmiany. Dołożę definicję maski z obsługą atrybutów %CAMERA_NAME
%YEAR %MONTH %DAY, będzie pełna elastyczność.

Pozdrawiam.

Sergiusz Rozanski

unread,
Mar 31, 2009, 3:11:11 PM3/31/09
to

To trzeba mieć skopane narzędzie do kopiowania plików aby zmieniało datę
zapisu.

--
*** rozanski.at.sergiusz.dot.com sq3bkn ***
*** http://www.4x4.kalisz.pl ***
$ You have new spam in /home/serek/maildir/

Michal Tyrala

unread,
Mar 31, 2009, 3:16:51 PM3/31/09
to
On Tue, 31 Mar 2009 19:11:11 +0000 (UTC), Sergiusz Rozanski wrote:
> > Nie doczytałem, faktycznie jeśli Twój aparat zapisuje atrybut
> > utworzenia pliku równy dacie zrobienia to już masz pół drogi za sobą,
> > ale podejrzewam że jak zrobisz kopię tego pliku to Ci się data
> > zrobienia ustawi na bieżącą. Data zrobienia zapisana w EXIF zostanie
> > zawsze taka jaka była.
>
> To trzeba mieć skopane narzędzie do kopiowania plików aby zmieniało datę
> zapisu.

Data zapisu? Ki czort?

RAW kopiowane przy pomocy Totalcmd maja date modyfikacji = dacie zrobienia
zdjecia, data utworzenia = data przegrania raw na HDD.

Skonwertowane z rawow jpg maja obie daty rowne dacie konwersji.

petermas

unread,
Mar 31, 2009, 3:24:52 PM3/31/09
to

> To trzeba mieć skopane narzędzie do kopiowania plików aby zmieniało datę
> zapisu.
>
> --

A jaką masz datę jak zrobisz kopię pliku? Pierwotną czy dzisiejszą?
Cały czas sądzę że mówimy o różnych datach. Efekt wykonania kopii
plików pod XP:
http://www.uploadgeek.com/share-0333_49D26BBD.html

Gotfryd Smolik news

unread,
Mar 31, 2009, 4:56:30 PM3/31/09
to
On Tue, 31 Mar 2009, petermas wrote:

> On 29 Mar, 21:53, Arturb <arturbi...@o2.pl> wrote:
>> Jak dołożysz jeszcze możliwość nazywania folderów z nazwy aparatu z
>> EXIF'a oraz większą elastyczność z nazwami katalogów (np: YYYY_MM/
>> x.jpg) - jak w DowlnoaderPro to biorę :) Tak trzymać i nieprzejmować
>> się malkontentami!!!
>

> Dzięki za konstruktywne uwagi, jak będę miał trochę czasu to zrobię
> małe zmiany. Dołożę definicję maski z obsługą atrybutów %CAMERA_NAME

A dlaczego nie:
'dowolna_nazwa_parametru_z_exifa'
...albo:
%dowolna_nazwa_parametru_z_exifa%
...skoro już i tak nad tym pracujesz?

> %YEAR %MONTH %DAY, będzie pełna elastyczność.

...a to co innego - bo tu będzie analiza jednej wartości z rozłożeniem
na kilka pól :)
Z tego powodu wyżej sugerowałem inny separator dla "każdej
dowolnej nazwy pola" (inny niż dla pól analizowanych).

pzdr, Gotfryd

Marx

unread,
Apr 1, 2009, 3:33:58 AM4/1/09
to
A patrzyles na to?
http://www.sno.phy.queensu.ca/~phil/exiftool/
Pobiezna analiza mozliwosci wykazuje ze autor watku wywaza otwarte drzwi...

A dla uzytkownikow Sony jest cos takiego:
http://www.dyxum.com/dforum/forum_posts.asp?TID=43251&PN=1
Pozwala przerzucic nazwe obiektywu do pola komentarza JPG, dzieki czemu
widac w prawie kazdej przegladarce plikow (np Faststone), jakim
obiektywem zrobiono zdjecie
Marx

Andrzej Lawa

unread,
Apr 1, 2009, 12:53:13 PM4/1/09
to
petermas pisze:

Dlatego właśnie nie używam tego syfu ;->

Michal Tyrala

unread,
Apr 1, 2009, 6:06:57 PM4/1/09
to
On Wed, 01 Apr 2009 18:53:13 +0200, Andrzej Lawa wrote:
> > A jaką masz datę jak zrobisz kopię pliku? Pierwotną czy dzisiejszą?
> > Cały czas sądzę że mówimy o różnych datach. Efekt wykonania kopii
> > plików pod XP:
> > http://www.uploadgeek.com/share-0333_49D26BBD.html
>
> Dlatego właśnie nie używam tego syfu ;->

A uzywam?

[kbns@kbns kbns]$ echo dupa > a
[kbns@kbns kbns]$ cp a b
[kbns@kbns kbns]$ stat a b
File: "a"
Size: 5 Blocks: 8 IO Block: 4096 Regular File
Device: 1601h/5633d Inode: 313654 Links: 1
Access: (0600/-rw-------) Uid: ( 500/ kbns) Gid: ( 1000/ users)
Access: 2009-04-01 23:57:55.000000000 +0200
Modify: 2009-04-01 23:57:52.000000000 +0200
Change: 2009-04-01 23:57:52.000000000 +0200

File: "b"
Size: 5 Blocks: 8 IO Block: 4096 Regular File
Device: 1601h/5633d Inode: 313658 Links: 1
Access: (0600/-rw-------) Uid: ( 500/ kbns) Gid: ( 1000/ users)
Access: 2009-04-01 23:57:55.000000000 +0200
Modify: 2009-04-01 23:57:55.000000000 +0200
Change: 2009-04-01 23:57:55.000000000 +0200

[kbns@kbns kbns]$ mount
/dev/hdc1 on / type ext3 (rw)

PS. Da sie porozmawiac z cp, zeby nie ruszył mtime.

nb

unread,
Apr 1, 2009, 8:27:28 PM4/1/09
to

Ja podam tak:

root@photo/sony~ jhead domyslne.jpg # punkt widzenia obrazka
File name : domyslne.jpg
File size : 267027 bytes
File date : 2009:03:31 17:27:10
Camera make : SONY
Camera model : DSLR-A300
Date/Time : 2008:11:30 00:34:09
Resolution : 1280 x 857
Flash used : No
Focal length : 35.0mm (35mm equivalent: 52mm)
Exposure time: 0.500 s (1/2)
Aperture : f/5.6
ISO equiv. : 400
Whitebalance : Manual
Metering Mode: matrix
Exposure : aperture priority (semi-auto)
Comment : DSC00008.JPG

root@photo/sony~ sstat domyslne.jpg # punkt widzenia systemu
# 1
File: "domyslne.jpg"
Type: Regular File (10)
Mode: 0644 (-rw-r--r--) Flag: 0
U/G: 0/0 (root/wheel)
Size: 267027 (0x41313) Blocks: 576 (0x240)
Inode: 4074498 (0x3e2c02) Gen: 1853311013 (0x6e774825)
Links: 1 Device: 0,104
Access: Thu 2009-04-02 01:55:45 +0200 (CEST) 1238630145
Change: Tue 2009-03-31 17:33:30 +0200 (CEST) 1238513610
Modify: Tue 2009-03-31 17:27:10 +0200 (CEST) 1238513230
Birth: Tue 2009-03-31 17:24:33 +0200 (CEST) 1238513073


sstat to moja przeróbka stat-a, dodaje dosyć ważną datę
utworzenia pliku, czas w sekundach epoki uniksowej
(ważne przy czytaniu logów) i parę rozszerzeń różnych
formatów pól.

Warto zauważyć, że plik może mieć w systemie 4 różne daty każdą
inną od czasu wykonania zdjęcia, Wyjaśnia to, jak wieloznaczne
może być określenie 'sortowanie plików według daty'.


--
nb

Michal Tyrala

unread,
Apr 2, 2009, 2:40:42 AM4/2/09
to
On Thu, 02 Apr 2009 02:27:28 +0200, nb wrote:
> sstat to moja przeróbka stat-a, dodaje dosy? wa?n? dat?

> utworzenia pliku, czas w sekundach epoki uniksowej
> (wa?ne przy czytaniu logów) i par? rozszerze? ró?nych
> formatów pól.

Daj jakis namiar gdzie o tym poczytac?
Bo moje many do stat(2) nie wychodza poza kanon atime/mtime/ctime w
struct stat ( ).

pozdrawiam,

Gotfryd Smolik news

unread,
Apr 2, 2009, 4:24:41 AM4/2/09
to
On Thu, 2 Apr 2009, nb wrote:

> Warto zauważyć, że plik może mieć w systemie 4 różne daty

Skromny jakiś (ten system), musi jakiś un*x...

$ sh sys/noproc
OpenVMS V8.3-1H1 [...]
$ dir/full login.com;

Directory TESTDISK:[GS]

LOGIN.COM;55 File ID: (6092,1,0)
Size: 4/16 Owner: [GS]
Created: 24-JAN-2007 19:26:20.57
Revised: 21-APR-2008 19:12:26.12 (1)
Expires: <None specified>
Backup: 2-NOV-2008 21:31:47.12
Effective: <None specified>
Recording: <None specified>
Accessed: <None specified>
Attributes: <None specified>
Modified: <None specified>
[...]

:P
(inna rzecz, że bez używania większości z nich da się obejść, co
widać na obrazku, accessed niewłączone w filesystemie, journaling
też)

> każdą inną od czasu wykonania zdjęcia

:)

pzdr, Gotfryd

nb

unread,
Apr 2, 2009, 9:36:07 AM4/2/09
to
at Thu 02 of Apr 2009 08:40, Michal Tyrala wrote:

> On Thu, 02 Apr 2009 02:27:28 +0200, nb wrote:
>> sstat to moja przeróbka stat-a, dodaje dosy? wa?n? dat?
>> utworzenia pliku, czas w sekundach epoki uniksowej
>> (wa?ne przy czytaniu logów) i par? rozszerze? ró?nych
>> formatów pól.
>
> Daj jakis namiar gdzie o tym poczytac?
> Bo moje many do stat(2) nie wychodza poza kanon atime/mtime/ctime w
> struct stat ( ).

Pardon, zbytnio zaufałem jednolitości standardów, używam FreeBSD
mocno trzymającego się standardów i zakładam, że jeśli coś jest
we FreeBSD, jest również w linuksie (w drugą stronę już nie,
choćby w podstawowej komendzie cp).
Poza tym dochodzi różnica w systemach plików.

Wiedzieć, że unix!=linux to co innego niż wyryć w czaszce :-)


--
nb

Michal Tyrala

unread,
Apr 2, 2009, 10:20:08 AM4/2/09
to
On Thu, 02 Apr 2009 15:36:07 +0200, nb wrote:
> Pardon, zbytnio zaufałem jednolitości standardów, używam FreeBSD

To juz cos, dzieki, poogladam sobie :-)

PS. Oprocz linuksa przejrzalem tez mana na SunOSie, a innych uniksow w
tej chwli pod soba nie mam...

0 new messages