No Linux, você pode usar o comando exiftool . Por alguma razão, o manual on-line não contém a seção "RENAMING EXAMPLES", que me deu a dica essencial.
Para arquivos somente JPG, a seguinte chamada de comando deve fazer o trabalho:
exiftool -r '-FileName<CreateDate' -d '%Y-%m-%d/%H_%M_%S%%-c.%%le' <yourFolder>
Explicação:
-
-r
é para recursão -
'-FileName<CreateDate'
diz ao exiftool para renomear o arquivo de acordo com sua tag EXIFCreateDate
(você pode testar outros comoModifyDate
) -
-d '%Y-%m-%d/%H_%M_%S%%-c.%%le'
informa como construir a cadeia de nomes de ficheiros a partir da origem de datas "CreateDate
" (o "%-c
" irá anexar um contador em caso de colisões de ficheiros, o "%le
" significa "extensão de ficheiro inferior" )-
Nota : usei "
-FileName<...
" aqui para renomear os arquivos e movê-los para outra pasta em uma única etapa. O manual aponta que você tem que usar a sintaxe "-Directory<...
" para operações de pasta. Isso funcionou para mim desse jeito embora.
-
Nota : usei "
Você deve passar algum tempo lendo o manual desta poderosa ferramenta. Talvez haja um caminho ainda mais curto: D