Dateien zeitbasiert kopieren

tokoop

tokoop

Aktives Mitglied
Thread Starter
Dabei seit
03.09.2003
Beiträge
142
Reaktionspunkte
1
Hallo Community,

Ich würde gerne den Inhalt oder den Ordner selber (beides in meiner Cloud) am Ende des Tages auf meine Festplatte kopieren.

Was ich schon realisiert habe:
Ordneraktion: Kopiere mir die Datei die ich in den Ordner "XY" lege auch nach Ordner "Z"

Jetzt möchte ich:
Kopiere mir den gesamten Inhalt des Ordners "XY" zum Zeitpunkt 23:00 Uhr nach "Z".
Ich weiß aber nicht wo ich die Variabel Zeitbasiert finde oder wie ich diese einbauen kann. Hier habe auch nichts im Forum gefunden.

Hat hier jemand einen Tipp?

Danke.
 
womit genau willst du das machen?
mit automator?
 
Ein leichtes mit Applescript.
 
ja. da habe ich die andern Aktionen auch gemacht. Und da ich da kaum Ahnung von habe und ich damit recht gute Ergebnisse erzielt habe, würde ich das damit machen.
 
Naja, die Frage ist, wie willst Du denn Vorgang triggern. Ich würde launchd verwenden. Aber bevor ich weiter in die Details gehe müssen wir erst mal die OS Version wissen und für welchen Vorgang man sich schliesslich entscheidet.
 
Erstmal Danke für Euer Engagement....
Also ich habe macOS Sierra (10.12.3.6) auf iMac4GHz Intel Core i7, 16 GB, 1867 MHz DDR3

Ich möchte einen Ordner aus meiner CreativCloud
/Users/imac/Creative Cloud Files/P2

auf meine Festplatte
/Users/imac/_amd/_Verwaltung/P2_kopiert

kopieren und das zu einem bestimmten Zeitpunkt (23:00 Uhr)

Wenn das mit einen Einzeiler zu lösen ist den ich kopiere und irgendwo hin kopieren muss ... okay.
Aber ich habe von der Thematik keinen Blassen.

Bei Automator verstehe ich ein kleines bisschen was ich da mache und kann Kleinigkeiten auch reproduzieren.
 
mit launchd ist es auch nicht so schwierig, sollte so in der art aussehen:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Program</key>
    <string>/bin/cp</string>
    <key>ProgramArguments</key>
    <array>
        <string>-a</string>
        <string>/Users/imac/Creative Cloud Files/P2</string>
        <string>/Users/imac/_amd/_Verwaltung/P2_kopiert</string>
   </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>23</integer>
        <key>Minute</key>
        <integer>00</integer>
    </dict>
</dict>
</plist>

muss man wohl aber noch fein tunen …
 
Natürlich funktionieren alle genannten Lösungen - aber bei „keine Ahnung“ würde ich eher auf Fertiglösungen wie zb CCC zurückgreifen
 
Wäre das nicht eigentlich eine klassische Cronjob Aufgabe?
In den crontabs und fertig. :)

Abgesehen davon eine super Sache zum kennen lernen und üben.
 
  • Gefällt mir
Reaktionen: thorstenhirsch
Wäre das nicht eigentlich eine klassische Cronjob Aufgabe?
In den crontabs und fertig. :)

jein, cron ist seit launchd deprecated auf OS X …
launchd holt z.b. die jobs nach, wenn der rechner zu der zeit ausgeschaltet war, als der job eigentlich laufen sollte.
und die XML config sollte nicht so kryptisch wie ein crontab eintrag sein.
 
und die XML config sollte nicht so kryptisch wie ein crontab eintrag sein.

Dafür brauch jetzt jeder eine Website (Programm) wie die oben gegannte, super! Der vergleichbare cronjob hätte wie viel Buchstaben, 20? Deine xml Lösung hat 648.
 
Dafür brauch jetzt jeder eine Website (Programm) wie die oben gegannte, super! Der vergleichbare cronjob hätte wie viel Buchstaben, 20? Deine xml Lösung hat 648.

es sind über 100, wobei der cp befehl schon 87 zeichen hat.
bis die leute man 5 crontab finden dauert nun mal auch ;)

aber wie gesagt, cron ist unter OS X deprecated und wird dann einfach mal ohne ankündigung von apple entfernt.
 
Also ein Applescript würde etwa so aussehen:
Code:
set diList to list disks
if "yourDisk" is in diList then
    try
        do shell script "rsync -aq --exclude=.DS_Store ~/'Creative Cloud Files'/P2 ~/_amd/_Verwaltung/P2_kopiert"
    on error errStr
        display alert "Sync Error" message errStr as critical
    end try
end if
Das würde man dan mit launchd über osascript starten.
 
launchd holt z.b. die jobs nach, wenn der rechner zu der zeit ausgeschaltet war, als der job eigentlich laufen sollte.
ergänzende info: nur wenn <key>StartCalendarInterval</key> verwendet wird.
aber wie gesagt, cron ist unter OS X deprecated und wird dann einfach mal ohne ankündigung von apple entfernt.
das erzählst du uns doch seit 13 jahren. :crack:


ich würde auch, weil BSD-cp kein -u kann, rsync verwenden.

der "crontab -e"-eintrag für täglich 23:00 uhr würde ca. so aussehen:
Code:
00 23 * * * /usr/bin/rsync -a bla1 bla2
 
  • Gefällt mir
Reaktionen: thorstenhirsch
Zurück
Oben Unten