Het probleem is: de CompareFolder action geeft oude stijl paden terug (met dubbele punten). Daar kunnen bljkbaar niet alle scripts in Lion goed mee omgaan. Als je eerst een kopie maakt van de resultaten van CompareFolders (mbv Duplicate Finder Items) en die vervolgens verplaatst naar je Final map dan gaat het wel goed. Enige probleem is dan alleen nog dat de namen "copy" in hun naam hebben staan maar dat kun je oplossen met een extra stap (Rename Finder Items).
een simpele oplossing maar kom er maar eens op.ik heb gezocht en vanalles geprobeerd, heel veel verschillende compare en sync programma's geprobeerd die allemaal niet deden wat ik wilde.renamen kan dus ook goed via automator, wist ik niet, ik gebruik naar volle tevredenheid name mangler.
het enige is dat de automator in duplicate-mode een stuk langzamer is dan de move files mode, begrijpelijk.
nogmaals super veel dank, je hebt mijn leven weer een heel stuk gemakkelijker gemaakt.~joris
je optie die je in een vorig bericht opperde deed het geweldig.maar nu ge-upgrade naar mavericks krijg ik weer een foutmelding.misschien wil je er nog eens over buigen.
groente uit den haag~joris
Ik heb even het Automator script opnieuw gemaakt op mijn MBP met Lion, en dat werkte nog/weer.De bedoeling is dat je de map vergelijkt waar al je RAW bestanden in staan ('cr2') met de map waar je JPG selectie in staat ('1e').
Het enige probleem waar ik tegen aan liep nadat ik de Workflow had overgezet naar de Mac mini met Mavericks, was dat de "Compare Folders" Action ontbrak op mijn Mavericks systeem. Dit is geen standaard Apple action, maar eentje die je apart moet installeren. Downloaden kan van:http://automatorworld.com/archives/compare-folders/
Met deze Action geinstalleerd werkt de Automator workflow ook onder Mavericks.
Plaatje 1: de beginsituatiePlaatje 2: selecteer de juiste mappen in de Automator workflowPlaatje 3: het resultaat; de 'final' map is gevuldPlaatje 4: check of je de 'Compare Folder' Action hebt geinstalleerd
Pieterr om 18:15, 28-06-2012Is een shellscript dat precies hetzelfde doet ook goed voor je?
Ik had ook interesse in deze oplossing in Automator, maar die blijkt nogal traag (natuurlijk door het kopiëren) en loopt daardoor met grotere aantallen zelfs vast.
Daarom de vraag aan Pieterr: heb jij een shellscript hiervoor?Joris en ik (heb ik contact mee gehad) houden ons warm aanbevolen! ).
Omdat de forumsoftware de letterlijke code vernaggelt, maar even in een plaatje.
(Bewerkt door Pieterr om 18:29, 25-02-2015)
Ik ga het morgen uittesten, voor de zekerheid: vraagt dit script om welke mappen 1e en CR2 het gaat? Of moet je eerst die mappen in Terminal slepen en de locaties dan in dit script plakken?
Heb zelf niet veel ervaring met Shell scripts, en hoop natuurlijk niet dat dit script alle mappen 1e en CR2 in m'n Mac onderhanden gaat nemen...
Robert om 23:16, 25-02-2015Ik ga het morgen uittesten, voor de zekerheid: vraagt dit script om welke mappen 1e en CR2 het gaat? Of moet je eerst die mappen in Terminal slepen en de locaties dan in dit script plakken?
Nee dit script vraagt helemaal niks. Dit is slechts de 'core' van het script, de code die het echte werk doet. Op de eerste 4 regels (de DIR_xxx regels) dien je zelf de juiste directory-namen in te vullen. Ik heb de namen gebruikt zoals in het Automator voorbeeld. Het script sla je op in de map waarin de 4 submappen zich in bevinden. Uitvoeren van het script doe je daarna met:
sh scriptnaam
bash scriptnaam
(Bewerkt door Pieterr om 23:54, 25-02-2015)
Bijvoorbeeld door de mappen in Terminal te slepen?(ik weet dat Terminal dan automatisch de juiste locaties overneemt).
Als ik hier kijk dan lijkt het mogelijk:
http://stackoverflow.com/questions/9180476/how-to-prompt-a-user-for-a-name-to-create-a-folder-bash-shell-script
Ik heb twee "Ask for Finder Items" in Automator achter elkaar gezet. Die vragen beide om folders, en die doen hun werk gewoon.
Daarna gekozen voor "Run Shell Script", en daar het volgende in geplakt (mijn folders heten anders, vandaar de verschillen.
Verder heb ik de eerste zinnen van Pieterr weggelaten (de definities van de directories), omdat Automator dat volgens mij doet met Ask for Finder Items.
#EXT_JPG=.JPGEXT_RAW=.CR2for jpg in $(ls ${DIR_DEF}/*)dotmp=${jpg/${DIR_DEF}/${DIR_CR2}}raw=${tmp/${EXT_JPG}/${EXT_RAW}}cp ${raw} ${DIR_DEF}done
for jpg in $(ls ${DIR_DEF}/*)dotmp=${jpg/${DIR_DEF}/${DIR_CR2}}raw=${tmp/${EXT_JPG}/${EXT_RAW}}cp ${raw} ${DIR_DEF}done
Het resultaat is een foutmelding:
usage: cp [-R [-H | -L | -P]] [-fi | -nl] [-apvX] souce_file target_file
Robert om 11:00, 26-02-2015Verder heb ik de eerste zinnen van Pieterr weggelaten (de definities van de directories), omdat Automator dat volgens mij doet met Ask for Finder Items.
Het is niet zo dat als jij vanuit Automator een scriptje aanroept, dat dan automagisch dezelfde variabelen een correcte waarde hebben gekregen. Daar is meer voor nodig.
In het interfacing tussen Automator en shell scripts heb ik me nog niet verdiept. Daar wil ik wel eens naar kijken maar dat wordt dan pas op z'n vroegst in het weekend.
M.a.w., zowel Joris als ik maken bij iedere klus steeds weer nieuwe folders aan, maar eindigen daarin altijd op hetzelfde, in mijn geval met een folder DEF en een folder CR2. In die DEF staan de uitgekozen jpegs (en in CR2 natuurlijk de RAW bestanden ).
Ik heb trouwens ook jouw eerder uitleg proberen te volgen, maar krijg in Terminal steeds weer de melding "no such file or directory". Zowel daardoor, door het feit van de steeds veranderende locatie en de suggestie van Godfather ben ik pogingen met Automator gaan doen.
Dit draadje ontstond trouwens doordat de Compare Folders Workflow niet meer goed werkte, als die aan te passen zou zijn dan zouden we misschien ook in één klap uit de brand zijn.
Ik ben benieuwd, in de tussentijd ga ik gewoon weer met de hand aan de slag (klusje met 132 uitgekozen foto's, du sik ben wel weer even bezig... ).
ik wacht hem af, ik wens jullie sterkte, heb zelf geen kaas gegeten van terminal programmeren.@robert:: breek je jpg's op in 3 of 4 mappen dan doet de automator het wel.zodra het werkgeheugen vol raakt dan gaat de action over de kop denk ik zo.
succes~joris
Robert om 14:02, 26-02-2015@ Pieterr: Het probleem is dat de mappen steeds op andere locaties staan, want steeds andere klussen.
Dat snap ik.Daarom staan er 4 variabelen bovenaan het script. Het enige wat je hoeft te doen is daar de correcte mapnamen in te zetten. Dat mag ook een compleet pad zijn:
DIR_1E=/Users/robert/Pictures/opdracht1/1eDIR_CR2=/Users/robert/Pictures/opdracht1/cr2DIR_FINAL=/Users/robert/Pictures/opdracht1/finalDIR_JPG=/Users/robert/Pictures/opdracht1/jpg
Etc.
En uiteraard snap ik ook dat het nog makkelijker werkt als je dit soort paden bij elkaar kunt klikken via Automator.
Heb de mappen in Terminal gesleept, de paden gekopieerd en die in het script geplakt.
Toen sh in Terminal gezet en daar jouw script in gesleept (zodat de juiste locatie daarvan ook in Terminal stond), en na een Enter werkte het!
De bestanden werden trouwens gekopieerd en niet verplaatst, geen idee wat daarvoor zou aangepast moeten worden.
Heb net het ook via Automator geprobeerd, en dat werkt ook. Maar dat was wel met het script waar al de juiste locaties in staan, dus ik denk dat ik daar eigenlijk aan het valsspelen ben en dat die Ask for Finder Items nu eigenlijk niets doet...
Edit:Net de twee keer Ask for Finder Items weggehaald en het script loopt inderdaad nog steeds, dus die deden inderdaad niets. Is iets makkelijker op deze manier, want het is niet meer nodig om de locatie van het script aan te geven.
Het ideaal zou dus zijn dat de locaties door erop te klikken ingevuld zouden kunnen worden, maar geen idee of dat kan met Automator.
Robert om 15:12, 26-02-2015De bestanden werden trouwens gekopieerd en niet verplaatst, geen idee wat daarvoor zou aangepast moeten worden.
Ja er wordt een kopie van de foto gemaakt. Als je dat liever niet hebt, moet je in het script in de een-na-laatste regel 'cp' vervangen door 'mv'. Dan zal het script ook aanzienlijk sneller gaan. Maar je bent de foto dan wel kwijt in de originele lokatie.
Pieterr om 13:30, 26-02-2015In het interfacing tussen Automator en shell scripts heb ik me nog niet verdiept. Daar wil ik wel eens naar kijken maar dat wordt dan pas op z'n vroegst in het weekend.
Hier staan wat eerste aanknopingspunten...
http://stackoverflow.com/questions/4663982/automator-variable-in-shell-script
http://web.archive.org/web/20131018214926/http://coreygilmore.com/blog/2010/05/07/passing-multiple-automator-variables-to-a-shell-script/
Heb trouwens net hetzelfde gedaan met een map die 1e heet, maar veranderde daarbij alleen de locatie bovenaan. Tot mijn verbazing werkt dat ook, dus dat terwijl in het script zelf overal nog DIR_DEF staat, in plaats van DIR_1E.
Vreemd, maar wel in één klap 129 stuks!
Edit @ Pieterr: bedankt voor die links, maar daar kom ik de komende dagen ook niet aan toe.Nu eerst even hard werken...
Pieterr om 15:22, 26-02-2015[Als je dat liever niet hebt, moet je in het script in de een-na-laatste regel 'cp' vervangen door 'mv'.
Het kwartje begint te vallen, cp staat natuurlijk voor copy en mv voor move.
Dan zal het script ook aanzienlijk sneller gaan.
Ik ben natuurlijk blij dat het toch werkte, maar ik snap er niks van...