Bestanden kopieren met Apple Script
17 juli 2013 - 12:38   
geplaatst door: Leegethas
Hoi,

Ik zit met het volgende probleem. Ik heb 2 mappen. Laten we zeggen, Oud en Nieuw. Nieuw is een complete kopie van Oud. Beide mappen zijn nagenoeg hetzelfde, alleen bevat Nieuw bestanden die nieuwer (lees, bewerkt) zijn. Het probleem is dat Nieuw alle metadata mist. Hij staat namelijk op een niet-apple partitie en het kopieren is niet met Finder gedaan. De oplossing is vrij simpel, kopieer gewoon alle bestanden nog een keer van Oud naar Nieuw en doe dat deze keer wel met Finder. Dan wordt alle metadata namelijk wel netjes meegenomen (heb ik al getest, dat werkt) Het probleem is dat beide mappen heeeel veeeel bestanden en submappen bevatten. En zomaar alles overschrijven is niet echt een optie. Sommige bestanden zijn namelijk al bewerkt. Die mogen dus niet overschreven worden.

Is het mogelijk om deze actie te automatiseren met een Apple-Script die alle bestanden en submappen 1 voor 1 naloopt en kijkt of het overeenkomstige bestand in Nieuw niet is gewijzigd ten opzichte van het bestand in Oud. Is dat niet het geval, dan kan dat bestand in Nieuw gewoon overschreven worden met het originele bestand in Oud.

Als dit inderdaad mogelijk is, hoe krijg ik dat dan voor elkaar. Misschien een paar pointers/tips?

Bestanden kopieren met Apple Script
17 juli 2013 - 12:53    reactie #1
geplaatst door: Pieterr
Misschien een idee:

Verwijder uit Nieuw alles wat je niet hebt aangepast. Dat kun je automatisch doen door te selecteren op modificatiedatum. Bewaar alleen de recente bestanden, aangepast nà de kopie.

Vervolgens hernoem je Nieuw naar Nieuw-delta.
Vervolgens maak je een complete kopie van Oud naar Nieuw.
Tenslotte kieper je de bestanden van Nieuw-delta in Nieuw.

"One experiment is worth a thousand expert opinions."
Bestanden kopieren met Apple Script
17 juli 2013 - 12:58    reactie #2
geplaatst door: Didjee
Wellicht is ChronoSync een optie? Gebruik ik al jaren naar tevredenheid voor het dupliceren/back-uppen van mijn bestanden naar een externe drive (voordeel voor mij t.o.v. TimeMachine is dat deze app 'losse' bestanden kopieert ipv een grote 'gesloten' file).
Bestanden kopieren met Apple Script
17 juli 2013 - 13:43    reactie #3
geplaatst door: Gottfried Julius
Didjee,

Wat bedoel je met:

"deze app 'losse' bestanden kopieert ipv een grote 'gesloten' file)."


Juul

http://www.norderney.nl
Mac gebruiker sinds 1986 alweer
Bestanden kopieren met Apple Script
17 juli 2013 - 14:09    reactie #4
geplaatst door: Didjee
@Gottfried: TimeMachine maakt een map op de externe drive aan met daarin een 'eigen structuur' . Bestanden van hieruit terughalen of -vinden, werkt alleen makkelijk vanuit TimeMachine en dat vind ik niet (altijd) prettig.

ChronoSync synchroniseert bestanden tussen twee aan te wijzen locaties. Hierbij worden de files van de 'bron' (bijv. je map 'Documenten') 1-op-1 naar het 'doel' (externe drive, netwerkschijf, andere Mac, etc.) gekopieerd. Vanaf het doel kan ik dan gewoon een bestand openen door er op te dubbelklikken.

ChronoSync doet dus eigenlijk precies wat Leegethas nodig heeft (en nog meer). Hoe de bestanden tussen de twee locaties gesynchroniseerd moeten worden, is helemaal naar wens in te stellen (bi-directioneel/left-to-right/right-to-left). Meta data wordt, voor zover ik dat kan nagaan, bij het synchroniseren gewoon meegenomen.

https://dl.dropboxusercontent.com/u/2270336/macfreak-forum/chrono01.png

Bestanden kopieren met Apple Script

https://dl.dropboxusercontent.com/u/2270336/macfreak-forum/chrono02.png
Bestanden kopieren met Apple Script

Edit: eerste alinea aangepast n.a.v. reactie Pieterr hieronder.

(Bewerkt door Didjee om 14:44, 17-07-2013)

Bestanden kopieren met Apple Script
17 juli 2013 - 14:18    reactie #5
geplaatst door: Pieterr
Citaat
Didjee om 14:09, 17-07-2013

TimeMachine maakt een grote backup file aan op de externe drive. Bestanden van hieruit terughalen, werkt alleen vanuit TimeMachine en dat vind ik niet (altijd) prettig.

Wat je zegt klopt niet helemaal. Time Machine gebruikt niet één grote backupfile. Je kunt ook vanuit de Finder afzonderlijke bestanden uit een Time Machine backup terughalen. Als je weet waar je moet zoeken werkt dat zelfs erg makkelijk. Maar als je dat niet weet kun je inderdaad beter de Time Machine interface gebruiken.

(Meer info voor de liefhebbers: http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/ )

"One experiment is worth a thousand expert opinions."
Bestanden kopieren met Apple Script
17 juli 2013 - 14:39    reactie #6
geplaatst door: Didjee
@Pieterr: met 'grote backup-file' bedoel ik dus de map 'backups.backupd'. Heb TimeMachine hier op mijn werk niet draaien en dacht dus dat dit als gesloten file in de Finder werd gepresenteerd (net zoals de Aperture Library wat feitelijk ook gewoon een map is). Om daarin een bestand terug te vinden, moet je dus inderdaad goed weten waar je moet zoeken. Niet echt praktisch...

Meer ehhh... we dwalen wel wat af van de vraag die de TS stelde :biggrin:

(Bewerkt door Didjee om 14:41, 17-07-2013)

Bestanden kopieren met Apple Script
17 juli 2013 - 19:24    reactie #7
geplaatst door: Gottfried Julius
Ik begrijp nu wat je bedoeld.
Ik heb Chrono hier ook en heb 'em in het verleden wel gebruikt. Ik werd een beetje "flauw" van al die overbodige mededelingen over "ownership" etc. etc.

Al jaren gebruik ik nu Silverkeeper. Simpel maar uitermate doeltreffend voor wat ik wil.
Maar ik gebruik op deze iMAC G5 dan ook nog OSX10.4.11.
Mijn vrouw gebruikt OSX Snow op haar MacBook en ook daar gaat Silverkeeper prima.
Niks geen Time machine. Maar je moet natuurlijk wel discipline hebben om te backuppen. En dat heb ik gelukkig. (Al sinds m'n eerste MAC in 1986, ja, ja)  Alles 1x per dag en dat twee op 2 afzonderlijke externe.........................

Dank voor jou uitleg.


Juul

(Bewerkt door Gottfried Julius om 19:25, 17-07-2013)

http://www.norderney.nl
Mac gebruiker sinds 1986 alweer
Bestanden kopieren met Apple Script
18 juli 2013 - 00:26    reactie #8
geplaatst door: jetskyer
Dit zou simpelweg met rsync moeten kunnen.
Rsync zal de vernieuwde bestanden laten voor wat ze zijn en alleen de ontbrekende bestanden toevoegen.

Hoe?
Typ het volgende in terminal:

rsync -a -u /volumes/users/blabla/oud/ /volumes/users/blabla/nieuw/"

Vergeet de / achter oud en nieuw niet aangezien het anders als enkele map gezien wordt en niet 'duizenden' losse bestanden.

Maak voor je eigen gemoedsrust een backup van je nieuwe map voor het geval mijn idee niet werkt.
De /volumes/users/blabla/ moet uiteraard de directory zijn naar je mappen

MacBook Pro 15.4"|1TB MyBook Studio|iPhone 4S
tip: corepad skatez onder je mighty/magic mouse. een echt genot