Je suis intéressé à combiner les fichiers de trois Mac en copiant les fichiers de chacun dans une hiérarchie de dossiers unique de ma conception sur un disque dur externe.
Dans mon expérience passée de copie de fichiers dans OSX, les fichiers perdent parfois leurs horodatages créés et modifiés; c'est-à-dire qu'ils sont modifiés au moment présent où la copie du fichier se produit.
Comment puis-je m'assurer que cela ne se produit pas?
macos
file-transfer
le miroir
la source
la source
Réponses:
Je viens de le rencontrer moi-même et la
cp
commande intégrée le gère.J'ai découvert un tas de vieilles cartes CF dont je voulais récolter les photos. Mes scripts de traitement regarderont le fichier mtime pour le mettre au bon endroit, donc j'avais besoin qu'il soit conservé.
Depuis la page de manuel :
Donc, en utilisant,
zsh
j'ai pu exécuter (NO NAME
étant le nom du volume de mes cartes):Je crois que la
/**/*
construction spéciale est spécifique à ZSH; mais vous pourriez faire quelque chose commela source
cp -p
est simple, préserve l'heure modifiée (probablement le plus utile des trois horodatages d'un fichier) et ne nécessite pas la création d'un fichier d'archive intermédiaire.cp -p
ne fonctionne pas lors de la copie de HFS + vers FAT32.J'utilise rsync pour faire ce genre de copie. Notez cependant que la version fournie par Apple est 2.6.9 et comporte des bogues. Vous devez donc en faire construire un par un tiers, soit vous-même, soit via un gestionnaire de packages
par exemple
L'option
-E
copie les listes de contrôle d'accès et-a
préserve les autorisations et les heures Unix. (eh bien il l'a fait sur rsync 2 rsync 3 semble avoir besoin de -AX)rsync
peut également être configuré pour copier sur des machines distantes sans monter de disques.Il existe des interfaces graphiques pour rsync, par exemple aRsync . Pour d'autres outils de synchronisation d'annuaire, consultez cette question .
la source
rsync
est une bonne solution, mais sachez qu'elle ne préserve pas les temps d'accès.pax
(voir ma réponse ci-dessous).man rsync
et recherchezpreserve times
:) ⇒ la réponse de Mark est correcte.-t
. Le bug est probablement également présent dans Mavericks et Yosemite.Utilisez
pax
. Lepax
format par défaut , appelé ustar , préserve la modification des fichiers et les temps d'accès (entre autres comme l'ID utilisateur, l'ID de groupe, les bits de mode fichier et les attributs étendus comme les commentaires Spotlight et les ACL). Voir lapax
page de manuel ici pour plus de détails.Tout d'abord, créez une
pax
archive sur chaque Mac et copiez-la sur le disque dur externe comme ceci:Tapez dans le terminal:
et faites glisser le dossier où les fichiers à combiner résident sur ce Mac vers le terminal:
Vous pouvez également taper le nom complet du dossier:
Cela changera le dossier actuel en «votre dossier».
Archivez le dossier avec
pax
:Utilisez le Finder pour copier l'archive nouvellement créée
yourfolder.ustar
sur le disque dur externe.Extrayez ensuite les archives avec
pax
:Ouvrez Terminal sur le Mac sur lequel le disque dur USB externe est branché.
Remplacez le dossier actuel par la hiérarchie de dossiers unique sur le disque dur externe avec la commande
cd
comme expliqué ci-dessus:Extraire les archives:
Déplacez les fichiers avec le Finder si vous en avez besoin (le Finder préserve la modification des fichiers et les temps d'accès dans le même volume).
(J'ai testé cette procédure sur OS X 10.8 (Mountain Lion).)
la source
Compressez-les avec zip ou sélectionnez-les avec ctrl-clic ou clic droit et choisissez Compresser. Copiez les fichiers compressés sur votre système cible et ouvrez-les.
Si vous le pouvez, formatez votre disque externe en tant que système de fichiers Mac OS, pas en FAT.
la source