Automator und die if-Abfrage

Ich möchte folgendes mit Automator tun:
- Ein Verzeichnis von einem FTP-Server mit einem lokalen Verzeichnis synchronisieren.
Das klappt gut.
- Das synchronisierte Verzeichnis archivieren. Das klappt auch gut.

Jetzt kommt die Knacknuss:
Das Archiv soll nur erstellt werden, wenn das Änderungsdatum des lokalen Verzeichnisses gleich wie das heutige Datum ist. D. h. das Archiv soll erst erstellt werden, wenn eine Veränderung stattgefunden hat.

Wie mache ich das mit Automator? Oder muss ich das in Zusammenarbeit zwischen AppleScript und Automator machen? Wenn ja, wie genau?

Danke im Voraus für eure Hilfe.
„Lass mich gewähren und ich werde mich meinem Schicksal fügen. Sperre mich ein und ich werde unvergesslich. Töte mich und ich werde unstreblich.“

Kommentare

_mäuschen
Etwa in so…

Verzeichnis wurde modifiziert
_mäuschen
Verzeichnis wurde nicht modifiziert
_mäuschen
on run {input, parameters}

if short date string of (modification date of (info for input)) is greater than short date string of ((current date) - days) then
set result to input
else
set result to {}
end if
return result

end run
Danke für die Hilfe. Ich habe ein Denkfehler gemacht, weil das Änderungsdatum wird ja nicht geändert, wenn eine Datei in einem unter unter Ordner geändert bzw. geupdatet wird.

Wie soll ich hier vorgehen bzw. wie kann ich Applescript dazu bringen, dass er das Änderungsdatum aller Dateien und Unterordner untersucht?
„Lass mich gewähren und ich werde mich meinem Schicksal fügen. Sperre mich ein und ich werde unvergesslich. Töte mich und ich werde unstreblich.“
Könnte so gehen:
Im Finder neuen intelligenten Ordner erstellen Verzeichnis Änderung heute.
Diesen Ordner in Automator mit Ordneraktion verbinden.

"unstreblich" wirst du, verstehe...
_mäuschen
on run {input, parameters}
set SourceFolder to last item of input
set oldDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to {","}
set delimitedList to every text item of input
set AppleScript's text item delimiters to oldDelims
set myResult to {}
repeat with f in delimitedList
if short date string of (modification date of (info for f)) is short date string of (current date) then
set myResult to SourceFolder
end if
end repeat
return myResult
end run

und Automator mit Variablen nutzen.
Gibts denn keine nutzbare Rueckmeldung vom Synchronisationsvorgang, ob ueberhaupt etwas geaendert hat, und damit ein neues Archiv notwendig ist?!

Kommentieren

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

Ihre ersten Erfahrungen mit OS X Yosemite?

  • Hervorragend, ein perfektes und zuverlässiges Update28,4%
  • Ein gutes und weitgehend zuverlässiges Update, bin zufrieden40,3%
  • Tendenziell zufrieden13,7%
  • Bin mir noch unschlüssig8,2%
  • Tendenziell unzufrieden4,8%
  • Ein schlechtes und weitgehend unzuverlässiges Update, bin unzufrieden1,4%
  • Bin entsetzt, Yosemite ist totaler Murks3,3%
883 Stimmen20.10.14 - 26.10.14
0