Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum
>
Software
>
Automator-Spezialist gesucht
Automator-Spezialist gesucht
Cleanart
03.04.09
15:43
Das Thema bringt mich noch um! Es sieht immer alles so nett aus, aber ich habe mit dem Tool noch nie was zuwege gebracht.
Jetzt hätte ich einen Superjob dafür: aus einer missglückten Datenrettung meiner Fotos sind über 5000 Bilder in jeweils einem Ordner gelandet. Aus diesen 5000 Ordnern möchte ich die Bilder in einen einzigen Ordner verschieben. Geht das mit Automator?
Gedachte Lösung: Geh zum ersten Ordner, mach ihn auf, markiere das darin befindliche Foto, verschiebe es in Ordner "Alles hierein", gehe aus dem Ordner eine Ebene höher, lösche den eben bearbeiteten Ordner und wieder von vorn.
Das müsste doch ein Paradejob für Automator sein. Gescheitert bin ich immer, wenn ich versucht habe, einen relativen Verweis zu finden. Also nicht "Geh zum Ordner XY, guck da rein und mach..." sondern "Geh zum ersten Ordner, öffne ihn, mach was, geh raus, lösche ersten Ordner, geh zum ersten Ordner..." u.s.w.
Wer kann/will helfen??
Hilfreich?
0
Kommentare
jogoto
03.04.09
16:00
Falls es mit Automator nicht gehen sollte, nimm GraphicConverter.
Mehrfachkonvertierung
kopieren
Da kannst Du Unterordner mit einbeziehen.
Hilfreich?
0
hst
03.04.09
16:33
Mit Automator direkt wird es nicht funktionieren.
Hingegen mit Applescripteditor lässt sich die Aufgabenstellung gut bewerkstelligen:
Lese Count von Folder XY, laufe einen Loop durch mit entsprechenden Aktionen usw.
Hilfreich?
0
bestbernie
03.04.09
17:22
Mach doch eine Suche in übergeordneten Ordner, und die gefundenen Bilder ziehst du dann in den Ordner deiner Wahl
Hilfreich?
0
_mäuschen
03.04.09
17:32
Lege die x Ordner auf den Schreibtsich.
Daneben aber gar nichts anderes.
Dann lass diesen AppleScript laufen.
(Ev. noch extension an Dateiendung anpassen)
set extension to "jpg"
set f to {}
set h to path to "desk"
tell application "Finder"
set d to every folder of folder h
repeat with i in d
set a to (every file whose name extension is extension) of i
copy a to end of f
end repeat
set pa to path to "cusr"
try
make new folder at pa with properties {name:"moved"} -- wennn nicht existent
end try
set pa to (pa as string) & "moved" -- Ordner im Benutzer Heimverzeichnis
repeat with mf in f
move mf to pa
end repeat
repeat with i in d
move i to trash
end repeat
end tell
Hilfreich?
0
Hühnchen
03.04.09
17:38
_mäuschen
Bin beeindruckt
, Aber ich hätte es jetzt auch ála bestbernie gemacht. einfach und versteht jeder. (Es sei denn ich hätte die Fotos schon in Lightroom, damit ginge es halt auch )
Hilfreich?
0
_mäuschen
03.04.09
17:56
Suche in übergeordneten Ordner
?
Hilfreich?
0
jse
03.04.09
18:01
Das ist doch mit einem Einzeiler im Terminal gemacht. Warum so kompliziert?
1.) Terminal aufmachen
2.) cd und ein Leerzeichen tippen
3.) dann den Ordner, der alle Unterordner mit den Fotos enthält, im Terminal per Drag&Drop fallen lassen
4.) Enter
nun den Einzeiler eintippen
> find . -type f -exec cp "{}" "PFAD ZUM ZIELORDNER" \;
Der Pfad zum Zielordner sollte nicht in dem Ordner liegen, der die Unterordner mit den Fotos enthält.
Hilfreich?
0
_mäuschen
03.04.09
18:15
jse,
Wenn schon, dann mit zusätzlich
-name '*.jpg'
und warum kopieren?
-exec mv
und die nun leeren Ordner sind ja auch noch nicht im Papierkorb.
Und wenn es Leerstellen in den Dateinamen hat? Was dann?
Hilfreich?
0
jse
03.04.09
18:23
Das .jpg hab ich weggelassen, weil er nicht geschrieben hat, was er für Bilder hat. Das müssen ja nicht unbedingt Jpegs sein, oder die enden auf .JPG oder jpeg, oder was weiss ich. Deshalb alle Files.
Kopieren, weil man damit die geretteten Originale unangetastet lässt. Zum Schluss, wenn alles geklappt hat, dann zieht man einfach den übergeordneten Ordner mit den vielen Unterordnern in den Papierkorb und fertig.
Die Leerstellen im Pfadnamen sind doch schon gequoted mit "" (was fürn denglisch
).
Hilfreich?
0
_mäuschen
03.04.09
18:25
Oh je, ich hab's versucht mit
for f in `find . -name '*.jpg' ; do mv "$f" "Zielordner"; done
und bin über die Leerzeichen gestolpert.
Hilfreich?
0
jse
03.04.09
18:38
Na ist doch klar warum:
Die Shell substituiert `command` mit der Ausgabe von command. Da werden alle Jpegs inkl. Pfad ausgegeben, allerdings ohne Quotes. Wenn nun irgendwo im Pfad ein Leerzeichen ist, dann ist das fürs for ein Separator. Deshalb gehts nicht.
Hilfreich?
0
Hühnchen
03.04.09
19:19
jse & _mäuschen
Das ist doch mit einem Einzeiler im Terminal gemacht. Warum so kompliziert?
Ja nee, iss klar, alles viel einfacher so und nach ner halben Stunde hat man es dann schon, vorausgesetzt man schreckt nicht vorm Terminal zurück also da finde ich doch, dass man sich
F leichter merken kann
Hilfreich?
0
Rantanplan
03.04.09
19:31
Hühnchen
Doch, doch, es geht mit dem Einzeiler wirklich sehr schnell und man braucht auch keine halbe Stunde dafür. Vorausgesetzt, man ist kein typischer Mac-User. Also Mausschubser
Für jemanden der die Shell oft benutzt, ist dieser Einzeiler die völlig natürliche Lösung.
Über den Fehler mit den Leerzeichen stolpert man normalerweise auch nur einmal und danach nie wieder. Ist halt alles Erfahrungssache. Einmal auf die Nase gefallen, danach weiß man was man vermeiden sollte
Was ich eigentlich sagen wollte: jeder hat eine andere Lösung, die für ihn "natürlich" ist. Wer in der Shell rumturnt nimmt die Einzelerlösung, wer geübter AppleScripter ist, der nimmt die und wer nur Bediener ist nimmt den Finder
Ich hätte auch die Shell genommen
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
Hilfreich?
0
Cleanart
04.04.09
00:18
Das isses bzw. das wares !! Begeisterung und ein großes DANKE an die Runde, speziell natürlich an jse. Nach einer knappen halben Stunde hatte ich 11000 Bilder im neuen Ordner. (Ich hatte anfänglich wohl ein paar Ordner übersehen) Im Terminal geht es wirklich turbomäßig zu Sache!
Morgen probier ich - just for fun - mal, ob ich mit AppleScript auch klarkomme.
Nochmals bedankt!
jse
Das ist doch mit einem Einzeiler im Terminal gemacht. Warum so kompliziert?
1.) Terminal aufmachen
2.) cd und ein Leerzeichen tippen
3.) dann den Ordner, der alle Unterordner mit den Fotos enthält, im Terminal per Drag&Drop fallen lassen
4.) Enter
nun den Einzeiler eintippen
> find . -type f -exec cp "{}" "PFAD ZUM ZIELORDNER" ;
Der Pfad zum Zielordner sollte nicht in dem Ordner liegen, der die Unterordner mit den Fotos enthält.
Hilfreich?
0
_mäuschen
04.04.09
11:05
Just for fun
Leicht abgeänderter AS
set extension to "jpg"
set f to {}
tell application "Finder"
set h to choose folder with prompt "Wo befinden sich die Daten?" without invisibles
set d to every folder of folder h
repeat with i in d
set a to (every file whose name extension is extension) of i
copy a to end of f
end repeat
repeat
set pa to choose folder with prompt ("Wohin sollen die Daten?
Nicht innerhalb des Ordners " & h as string) & "
!!!" without invisibles
if (pa as string) contains (h as string) then
display dialog "Wähle einen anderen Ordner ausserhalb
" & h as string
else
exit repeat
end if
end repeat
repeat with mf in f
move mf to pa
end repeat
repeat with i in d
move i to trash
end repeat
end tell
Hilfreich?
0
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.