Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/12/2024, à 07:44

poumtatalia

Photos par date "Created on"

Bonjour,

Depuis des changements de PC, Shotwell me montre les phtos par dates qui ne collent plus. En creusant un petit peu, il prend les dates "Accessed" là ou j'a besoin de voir mes photos par la date que je trouve dans Image Properties / Created On.
J'ai essayé plusieurs softs, mais aucun ne semble fonctionner avec cette date.

Quelqu'un connaitrait-il un logiciel qui pezrmette d'utiliser cette date "Created on", ou comment modifier en masse toutes mes photos (sachant que j'en ai des dizaines de milliers dans une arborescence de plusieurs centaines de répertoires) ?

Merci d'avance pour votre aide !


Rookie abonné au LTS, en ce moment Ubuntu 24.04, mais pas moins débutant pour autant...

Hors ligne

#2 Le 13/12/2024, à 08:10

serged

Re : Photos par date "Created on"

J'avais en un temps pondu ce script :

# verifying usage
if [ "$#" = "0" -o "$1" = "-h" -o "$1" = "--help" ]; then
    echo Utilisation: $(basename $0) image [ image ... ]
    echo "Met la date d'un groupe d'images d'après la date exif."
    exit 1
fi

# loop that enables the treatment of a list of images
for i in "$@"; do
    # verifying file
    if [ -f "$i" ]; then
        nom_du_fichier="$i"
        type_du_fichier=`file "$nom_du_fichier" | awk -F":" '{print $2}'`
        type_du_fichier=`echo "$type_du_fichier" | awk -F" " '{print $1}'`
        echo Type de fichier $type_du_fichier
        if [ $type_du_fichier == "JPEG" ]; then
         image="oui"
        else
         image="non"
        fi

        if [ $image == "oui" ]; then
           date_exif=$(identify -format "%[EXIF:DateTime]" "$nom_du_fichier")
           if [ "$date_exif" == "" ] ; then
             date_exif=$(identify -format "%[EXIF:DateTimeOriginal]" "$nom_du_fichier")
           fi
# On peut faire d'autres tests si la date est dans un tag exotique

           date_modif=$(ls -lh "$nom_du_fichier" | awk -F" " '{print $6 " " $7}')
           date_exif2=`echo $date_exif | awk '{print substr($1,3,2) substr($1,6,2) sub$
           date_modif2=`echo $date_modif | awk '{print substr($1,3,2) substr($1,6,2) s$
           echo nom de fichier $nom_du_fichier
           echo date modif $date_modif $date_modif2
           if [ $date_exif2 != $date_modif2 ]; then
                date_touch=`echo $date_exif2 | awk -F"-" '{print $1 $2}'`
                echo Les dates sont differentes !!! $date_touch
                echo touch -t $date_touch "$nom_du_fichier"
                touch -t $date_touch "$nom_du_fichier"
           fi
           echo
        fi
    else
        echo "$i" : file does not exist
    fi
done

Tu peux l'utiliser, le modifer comme tu veux.


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#3 Le 02/01/2025, à 20:42

poumtatalia

Re : Photos par date "Created on"

Bonjour Serged,

Merci pour ton aide mais malheuseusement, je n'ai aucune compétence en développement.
J'ai bien essayé de lancer le script en l'état mais à part

./test.sh 
Utilisation: test.sh image [ image ... ]
Met la date d'un groupe d'images d'après la date exif.

Je ne sais pas trop quoi faire yikes


Rookie abonné au LTS, en ce moment Ubuntu 24.04, mais pas moins débutant pour autant...

Hors ligne

#4 Le 02/01/2025, à 20:45

iznobe

Re : Photos par date "Created on"

Bonjour , ton explorateur de fichier sait faire ça .

il suffit de faire un clic droit ( en general ) sur la barre des indications ou bien dans preferences et de choisir la / les date(s) a afficher .
tu peux meme ensuite les calsser par la date de ton choix croissante ou decroissante .

certains explorateurs de fichiers se melange les dates ... je ne sais pas si c' est dans la traduction que se situe le probleme ou si c' est dans les dates elle memes .

Dernière modification par iznobe (Le 02/01/2025, à 20:46)


retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

En ligne

#5 Le 02/01/2025, à 20:52

poumtatalia

Re : Photos par date "Created on"

Bonjour iznobe,
Merci pour ton aide
Ca fonctionne pour les dates "Accessed", "Created" et "Modified" mais je ne le vois pas pour les dates exif cachées dans properties (Mon explorateur est Files).


Rookie abonné au LTS, en ce moment Ubuntu 24.04, mais pas moins débutant pour autant...

Hors ligne

#6 Le 02/01/2025, à 20:57

iznobe

Re : Photos par date "Created on"

haa non pour les dates exif , il faut extraire les infos . peut etre qu ' il existe une extension , mais je ne sais pas trop ...

EDIT , je viens de verifiez , sur " NEMO " , il y a moyen d' afficher les dates EXIF , je ne sais plus quelle extension fait ca ...

montre

apt policy nemo*

EDIT 2 : c' est /nemo-media-columns/ qui permet de faire ca .

Dernière modification par iznobe (Le 02/01/2025, à 21:09)


retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

En ligne

#7 Le 02/01/2025, à 22:18

poumtatalia

Re : Photos par date "Created on"

$ apt policy nemo*
nemo-gtkhash:
  Installed: (none)
  Candidate: 1.5-1build2
  Version table:
     1.5-1build2 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
nemo-sendto-clamtk:
  Installed: (none)
  Candidate: (none)
  Version table:
nemos-cert-u-boot:
  Installed: (none)
  Candidate: (none)
  Version table:
nemo-data:
  Installed: (none)
  Candidate: 6.0.2-1ubuntu2
  Version table:
     6.0.2-1ubuntu2 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemo-python:
  Installed: (none)
  Candidate: 6.0.0+ds-1build3
  Version table:
     6.0.0+ds-1build3 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
nemos-key:
  Installed: (none)
  Candidate: (none)
  Version table:
nemo-fileroller:
  Installed: (none)
  Candidate: 6.0.0+ds-1build2
  Version table:
     6.0.0+ds-1build2 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
nemos-dev-cert-u-boot:
  Installed: (none)
  Candidate: 1.8
  Version table:
     1.8 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemos-dev-cert:
  Installed: (none)
  Candidate: 1.8
  Version table:
     1.8 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemo-compare:
  Installed: (none)
  Candidate: 6.0.1-1
  Version table:
     6.0.1-1 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemo:
  Installed: (none)
  Candidate: 6.0.2-1ubuntu2
  Version table:
     6.0.2-1ubuntu2 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
nemo-font-manager:
  Installed: (none)
  Candidate: 0.8.8-4build2
  Version table:
     0.8.8-4build2 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
nemo-nextcloud:
  Installed: (none)
  Candidate: 3.11.0-1.1build4
  Version table:
     3.11.0-1.1build4 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemo-owncloud:
  Installed: (none)
  Candidate: 5.0.0-1
  Version table:
     5.0.0-1 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemos-dev-key:
  Installed: (none)
  Candidate: 1.8
  Version table:
     1.8 500
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://fr.archive.ubuntu.com/ubuntu noble/universe i386 Packages
nemos-cert:
  Installed: (none)
  Candidate: (none)
  Version table:

Rookie abonné au LTS, en ce moment Ubuntu 24.04, mais pas moins débutant pour autant...

Hors ligne

#8 Le 02/01/2025, à 22:24

poumtatalia

Re : Photos par date "Created on"

J'ai bine installé Nemo wink
.. Mais comment installe-t-on l'extension media columns ? (dsl, très rookie le mec)


Rookie abonné au LTS, en ce moment Ubuntu 24.04, mais pas moins débutant pour autant...

Hors ligne

#9 Le 03/01/2025, à 00:11

iznobe

Re : Photos par date "Created on"

en l ' etat elle n' est pas dispo .

il faut donc soit ajouter un depot tiers qui la contient , soit la compiler , soit ...


retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

En ligne

#10 Le 03/01/2025, à 04:46

Watael

Re : Photos par date "Created on"

serged : il manque une partie des lignes :

           date_exif2=`echo $date_exif | awk '{print substr($1,3,2) substr($1,6,2) sub$
           date_modif2=`echo $date_modif | awk '{print substr($1,3,2) substr($1,6,2) s$

et, on n'utilise pas ls dans un script, pour en parser les données; notamment les dates dont le format change à mesure que le temps passe.
préfère l'emploi de stat*; plus précisément ici; stat -c %y nomFichier.

* edit:
stat, ou date -r, dont le format a l'avantage d'être configurable :

date +'%F' -r nomFichier

edit2:

#!/bin/bash

##Objet : adapte la date système de fichiers images selon leur date exif

# verifying usage
if (($# == 0)) || test "$1" = "-h" -o "$1" = "--help"
then
    echo Utilisation: ${0##*/} image [ image ... ]
    echo "Met la date d'un groupe d'images d'après la date exif."
    exit 1
fi

for filename in "$@"
do
    if test -f "$filename"
    then
        if test "$(file --brief --mime-type "$filename")" = 'image/jpeg'
        then
            date_exif=$(2>/dev/null identify -format '%[EXIF:DateTime]' "$filename")
            test -n "$date_exif" || date_exif=$(2>/dev/null identify -format '%[EXIF:DateTimeOriginal]' "$filename")
            test -n "$date_exif" || continue

            #consruction du format pour touch -t ((YY)YY)MMDDhhmm(.ss)
            date_exif=${date_exif//[ :]/}
            date_modif=$(date +'%Y%m%d%H%M%S' -r "$filename")
            if (( date_exif != date_modif ))
            then
                echo "touch -t \"${date_exif:: -2}.${date_exif: -2}\" \"$filename\""
                touch -t "${date_exif:: -2}.${date_exif: -2}" "$filename"
            fi
        fi
    else
        echo "\"$filename\" is not a file or does not exist"
    fi
done

Dernière modification par Watael (Le 03/01/2025, à 08:00)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#11 Le 03/01/2025, à 09:22

iznobe

Re : Photos par date "Created on"

Salut , pour faire un essai , sans garantie , mais avec prudence ( on procede juste à une simulation dans un 1er temps ) :

wget https://ftp5.gwdg.de/pub/linux/debian/mint/packages/pool/backport/n/nemo-media-columns/nemo-media-columns_6.2.0+wilma_all.deb
sudo apt install -s ./nemo-media-columns_6.2.0+wilma_all.deb

Dernière modification par iznobe (Le 03/01/2025, à 10:24)


retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

En ligne

#12 Le 03/01/2025, à 10:18

Zwank

Re : Photos par date "Created on"

Bonjour,

Quelqu'un connaitrait-il un logiciel qui pezrmette d'utiliser cette date "Created on", ou comment modifier en masse toutes mes photos (sachant que j'en ai des dizaines de milliers dans une arborescence de plusieurs centaines de répertoires) ?

Le soft idéal pour ça c'est digikam. (sudo apt install digikam)


KDE neon user edition

Hors ligne