5 votes

Mettre à jour le fichier, mais ne pas modifier la date de modification du fichier. Est-ce possible ?

Sous Linux, est-il possible de modifier le contenu d'un fichier tout en conservant sa date de modification ? Si oui, comment ? Je vous remercie.

10voto

bilash.saha Points 3614

Obtenez la date de modification de votre fichier. Modifiez le contenu de vos fichiers et vous pourrez alors changer la date de modification en touch Par exemple

touch -m -t 09082000 file
to change the modification time to 8 sep, 20:00.

Vous pouvez également changer la date de modification pour qu'elle soit antérieure. Pour le 15/10/1998 12:30, la commande serait quelque chose comme ceci :

touch -m -t 19981015123000 file

2voto

Kent Points 71470

Une autre possibilité pourrait être un lien symbolique ?

si vous avez alink->a.txt Si vous modifiez le contenu de a.txt, la dernière date de modification du lien ne sera pas mise à jour.

2voto

biggdman Points 1778

Vous pouvez mémoriser la date de modification avant de modifier le contenu ; après la modification du contenu, vous pouvez ramener la date à sa valeur initiale. Cela peut se faire sous Linux à partir de la ligne de commande. Par exemple :

touch -t 09082000 fichier pour changer l'heure de modification en 8 sep, 20:00. Plus d'informations est disponible ici.

1voto

TabeaKischka Points 643

Comme j'ai eu un problème similaire et que j'ai trouvé cette question via Google, je vais donner une solution simple et automatique. Je stocke le temps de modification actuel dans la variable CURRENT Puis, après avoir modifié le fichier, j'ai remis l'heure de modification à son heure d'origine via touch . Notez que l'obtention de l'horodatage pour current est un peu maladroite, vous devrez peut-être la modifier un peu.

FILE=test.txt
touch $FILE
CURRENT=$(date -r $FILE +%Y%m%d%H%M)
# run your command here
touch $FILE 
touch -a -m -t $CURRENT $FILE

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X