#1 Le 25/12/2020, à 09:06
- Mi.Thi.76
[Résolu] Changer la date d'un fichier suivant une condition de date
Bonjour,
Suite à un problème matériel, la date système s'est mise à "avril 2021". Je ne m'en suis pas rendu compte de suite et j'ai mis à du temps à résoudre le problème. Mais maintenant c'est fait.
Problème : j'ai des soucis de mise à jour de fichiers à cause de dates erronées.
Je voudrais donc lancer un script qui fasse les choses suivantes :
- regarder la date de dernière création du fichier
- si elle est postérieure à "maintenant", changer la date de dernière création ET de modification du fichier à la valeur "maintenant"
- regarder la date de dernière modification du fichier
- si elle est postérieure à "maintenant", changer la date de dernière modification du fichier à la valeur "maintenant"
J'ai regardé sur le web, en français et en anglais, mais je n'arrive pas à démarrer. Pourtant, j'ai l'intime conviction que c'est possible en une ligne...
Pouvez-vous m'aider ou me mettre sur la voie ?
Cordialement,
Dernière modification par Mi.Thi.76 (Le 27/12/2020, à 12:25)
Hors ligne
#2 Le 25/12/2020, à 09:39
- Watael
Re : [Résolu] Changer la date d'un fichier suivant une condition de date
salut,
en gros :
find ... -newer[XY] ... -exec touch ...
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#3 Le 27/12/2020, à 12:25
- Mi.Thi.76
Re : [Résolu] Changer la date d'un fichier suivant une condition de date
Bonjour & merci pour cette piste, que j'ai évidemment suivie.
Résultat :
(1) je crée un fichier "refdate" auquel j'applique la date de maintenant via
touch refdate
(2) je regarde ce qui se passe avec
find /mondossier/ -newer refdate -exec stat -c %y,%n {} \;
(3) je lance la commande
find /mondossier/ -newer refdate -exec touch {} \;
(4) je relance
touch refdate
et je vérifie le résultat...
Merci beaucoup !
Dernière modification par Mi.Thi.76 (Le 27/12/2020, à 12:26)
Hors ligne