Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Automatisierung: eine Datei löschen, eine andere mit löschen - wie?

Automatisierung: eine Datei löschen, eine andere mit löschen - wie?

calvin
calvin15.04.0811:28
Hallo zusammen,

ich fotografiere oft in JPEG + RAW, habe also zwei Dateien auf meiner Platte. In einem Verzeichnis lege ich die JPEGs ab, in einem anderen die RAWs. Wenn ich die Bilder sichte, schaue ich mir die JPEGs an - dabei werden natürlich auch einige ausgesiebt und sollen gelöscht werden. Ich habe aber noch keine Idee, wie ich zuverlässig die RAWs mitlöschen kann, zumal diese unnötig viel Speicherplatz belegen. Die Dateien heißen gleich, unterscheiden sich nur in der Endung (jpeg/cr2).
Statt die JPEGs direkt zu löschen, könnte ich sie auch in einem Ordner "löschen" zwischenparken, wenn das den Abgleich erleichtert.
Geht das z.B. mit Automator oder hat jemand eine andere Idee?

Vielen Dank!

Calvin
0

Kommentare

_mäuschen
_mäuschen15.04.0813:39

Diesen Skript als Ordner Aktion dem "Löschen" Ordner anhängen.

Der Ordner mit den RAW ist in diesem script als CR2 definiert. Kann aber leicht geändert werden.

on adding folder items to this_folder after receiving these_items
 set source_folder to ¬
  do shell script "find " & (POSIX path of (path to "cusr" as Unicode text)) & " -name 'CR2'"
 tell application "Finder"
  repeat with i from 1 to the count of these_items
   set this_item to (item i of these_items) as alias
   set this_info to info for this_item
   set file_name to name of this_info
   set file_ext to name extension of this_info
   set length_ext to ((length of file_ext) * -1) - 2
   set file_name to text 1 thru length_ext of file_name
   set destination_file to ¬
    ((POSIX file source_folder) as string) & file_name & ".cr2"
   move destination_file to folder this_folder
  end repeat
 end tell
end adding folder items to


0
Dumpfbacke Kelly15.04.0813:43
Die einzige Idee, die ich dazu hätte wäre:

Die zu löschenden JPEGs erstmal in einen Ordner verschieben. Anschliessend diesen Ordner mit einem Script (AppleScript oder Automator) durchgehen, in der Art:

- nächste JPEG-Datei suchen
- Namen ohne Extension ermitteln
- im RAW-Ordner nach der gleichnamigen RAW suchen
- beide löschen
- wenn es noch mehr zu löschende JPEGs gibt, wieder oben anfangen

Irgendwie so würde ich das angehen.
0
Dumpfbacke Kelly15.04.0813:45
_mäuschen: So meinte ich das

Schüttelst du AppleScripts so aus dem Ärmel, oder hast du eine Umfangreiche Script-Sammlung? Du bist ja sehr oft sofort mit dem passenden Script zur Stelle.
0
_mäuschen
_mäuschen15.04.0813:48

Ach ja, den Ordner "Löschen" zu 'entleeren' vergessen


0
_mäuschen
_mäuschen15.04.0813:51

Dumpfbacke Kelly

hat hierbei massig Vorarbeit geleistet




0
fronk
fronk15.04.0814:27
_mäuschen

Nu ma nich so bescheiden …
0
_mäuschen
_mäuschen15.04.0815:20

Zum sofortigen löschen:

Ersetze

set destination_file to ¬
((POSIX file source_folder) as string) & file_name & ".cr2"
move destination_file to folder this_folder
end repeat

durch

set cr2trash to ¬
((POSIX file source_folder) as string) & file_name & ".cr2"
move cr2trash to trash
move this_item to trash
empty trash
end repeat


0
calvin
calvin15.04.0821:44
Wow, das ging ja schnell mit der Antwort - vielen Dank!
@Mäuschen
Ich muß mich jetzt als absoluter AppleScript-Dummy outen, aber kannst du mir vielleicht kurz erklären, was die einzelnen Skriptzeilen machen? Dann kann ich mir das für andere Aufgaben evtl. anpassen - Ideal wären Kommentare zu jeder Zeile, wenn das deine Zeit erlaubt.

Ich werde jetzt gleich mal mit zwei Testverzeichnissen das Skript ausprobieren.

Vielen Dank (auch den anderen), Calvin
0
Offshore
Offshore15.04.0822:16
calvin
Ideal wären Kommentare zu jeder Zeile, wenn das deine Zeit erlaubt.

Schreib doch erstmal, was Du GLAUBST, was jede Zeile bedeutet - dann kann mäuschen Zeit sparen, und muss nur noch ja/nein dahinterschreiben
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.