Si je copie un fichier d'un endroit à un autre à l'aide de cp
, l'horodatage du fichier copié est défini sur l'heure de la copie.
Y a-t-il un moyen d'éviter cela?
Je dois copier des fichiers sans modifier leurs horodatages.
cp -p
fait le tour. Pour Linux :
-p
identique à--preserve=mode,ownership,timestamps
-p
Faire en sorte que cp conserve les attributs suivants de chaque fichier source dans la copie: heure de modification, heure d'accès, indicateurs de fichier, mode de fichier, ACL, ID utilisateur et ID de groupe, comme le permettent les autorisations.
Et pour OS X :
-p
Faire en sorte que cp conserve les attributs suivants de chaque fichier source dans la copie: heure de modification, heure d'accès, indicateurs de fichier, mode de fichier, ID utilisateur et ID de groupe, comme le permettent les autorisations. Les listes de contrôle d'accès (ACL) et les attributs étendus (EA), y compris les fourches de ressources, seront également conservés.
Lorsque vous utilisez cp
à partir de GNU Coreutils , pour conserver uniquement les horodatages et non des attributs tels que l'ID utilisateur, l'ID de groupe ou le mode fichier, il existe le code long --preserve
qui permet de spécifier explicitement une liste d'attributs être préservé.
cp --preserve=timestamps source destination
Sachez cependant que cette syntaxe n'est probablement pas supportée par d'autres Unices. Une autre solution consiste à utiliser le paramètre --times
de rsync
qui devrait être disponible sur la plupart des installations.
Trois fois sur un système de fichiers Unix, l'heure d'accès (atime), l'heure de modification (mtime) et l'heure de changement d'inode (ctime). Vous pouvez modifier l'heure d'accès et l'heure de modification avec le programme tactile, par exemple
cp copie d’origine touchez ou copie d’origine
Cependant, vous ne pouvez pas changer l'heure de changement d'inode.
J'ai récemment eu besoin de faire quelque chose de similaire mais d'utiliser un lien symbolique à la place. Pour créer un lien symbolique et conserver l'horodatage d'origine: cp -ps src_file dst_symlink