mon blog de geek...

Comment changer la date d’un fichier ?

J’ai eu dernièrement à modifier la date d’un fichier dans le cadre d’un script d’optimisation d’images.

Terminal LinixIl s’agissait de faire une mise à jour des images d’un blog wordpress en les optimisant. J’ai choisi de lister toutes les images postérieures à la date (de dernière modification) d’un fichier créé pour l’occasion.

Le script, à la fin remet ce fichier à la date (et heure) du jour.

J’ai du fouiller un peu dans mes souvenirs pour retrouver la commande mais surtout les paramètres. Donc je vous fait profiter de mes recherches. Et la prochaine fois je saurai où chercher !

La commande touch

Cette commande Linux sert à mettre à jour le timestamp d’un fichier. Elle est souvent aussi utilisée pour créer un fichier vide.

Bien sur, comme d’habitude il vous faudra avoir les droits pour modifier le document.

Syntaxe de base

Sans options, le fichier verra sa date de modification mise à la date/heure actuelle. Si le fichier n’existe pas, il sera créé. La commande peut s’exécuter sur plusieurs fichiers, il suffit de les énumérer à la suite.

Les options

optionactionremarques
-ane modifier que la date d’accès
-mne modifier que la date de modification (par défaut)
-tutiliser une date précise et non l’actuelle
touch -m -t [AAMMJJhhmm] nomDuFichier
voir exemples ci-dessous
-dutiliser une date sous forme de chaînevoir exemples ci-dessous
-cne pas créer le fichier s’il n’existe pas
-rutilise la date d’un autre fichier

Exemples

commanderemarques
touch -t 201712250800 fichierva mettre la date de modification de
fichier au jour de Noël 2017
à 8h du matin
touch -t fichier1 fichierUtilise la date de fichier1
touch fichier1 fichier2 fichier3change la date des trois fichiers à la date actuelle
touch -m -d ‘next monday’ fichierfichier prend la date de lundi prochain
touch -m -d ‘2 hour ago’ fichierfichier recule de deux heures

Enfin, un ls -la ne vous donnera que l’heure de modification. Pour connaître également les heures de création et de dernier accès au fichier (plus d’autres informations) il faut utiliser la commande stat.

 

0 Commentaire

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *