Bonjour, je cherche une commande sous MacOS 11.6 pour copier le temps d'accès du fichier source au fichier de destination.
Le fichier source des temps d'accès ne doit pas être mis à jour.
Bonjour, je cherche une commande sous MacOS 11.6 pour copier le temps d'accès du fichier source au fichier de destination.
Le fichier source des temps d'accès ne doit pas être mis à jour.
Encore plus simple !
touch -a -r sourcefile destinationfile
Cela ne modifie que le temps d'accès, alors que mon autre exemple modifiait à la fois le temps d'accès et le temps de modification sur la destination. Voir man touch
pour les détails.
Note : Sous MacOS 11.6, 10.14 (et probablement avant), si le fichier touché est d'une longueur non nulle et se trouve dans un dossier indexé par Spotlight, Spotlight met à jour l'heure d'accès à l'heure actuelle peu après la définition de l'heure d'accès. Préférences/Spotlight/Privacy peut être utilisé pour exclure des dossiers de l'indexation par Spotlight.
Ce script devrait faire l'affaire :
#!/bin/sh
if [ $# -ne 2 ]; then
echo "Usage: $(basename $0) source destination"
exit 1
fi
FMT="%Y%m%d%H%M.%S"
atime=$(stat -f %Sa -t "$FMT" "$1")
if [ -n "$atime" ]; then
touch -t "$atime" "$2"
fi
Il copie le temps d'accès en utilisant stat, et écrit en utilisant touch.
Vous pouvez éviter d'écraser l'heure de modification avec l'heure d'accès en utilisant l'attribut -a
comme dans touch -a -t "$atime" "$2"
. De même, la note donnée dans l'article de MichaelR. autre réponse devrait s'appliquer à cette réponse.
La commande
cp -p source destination
fera l'affaire.
De la page d'accueil :
-p Permet à cp de préserver les attributs suivants de chaque fichier source dans la copie : heure de modification, heure d'accès, drapeaux de fichier, mode de fichier, l'ID de l'utilisateur et l'ID du groupe, comme le permettent les permissions. Contrôle d'accès Listes de contrôle d'accès (ACL) et attributs étendus (EA), y compris les fourches de ressources, seront également préservés.
Cette opération copie le contenu du fichier (et tout ce qu'elle peut faire), et pas seulement le temps d'accès.
LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.