Hier ist das Script
try
tell application "Finder"
mount volume "smb://xxx.xxx.x.xxx/Backup" as user name "backup" with password "xxxxxxx"
end tell
on error errMsg
display dialog "Fehler beim Verbinden: " & errMsg
end try
try
tell application "Finder"
mount volume "smb://xxx.xxx.x.xxx/Cloud" as user name "backup" with password "xxxxxxx"
end tell
on error errMsg
display dialog "Fehler beim Verbinden: " & errMsg
end try
-- Definiere Quellordner, Zielordner und Log-Dateipfad
set currentDate to do shell script "date +'%Y-%m-%d'"
set sourceFolder to "/Volumes/Cloud/"
set destinationFolder to "/Volumes/backup/Nov"
set logFile to "/Users/xxxxx/Documents/Dateien/Datensicherung/Logs/" & currentDate & "_monatliche_Sicherung.log"
-- Erstelle den rsync-Befehl
set rsyncCommand to "rsync -avu --delete --log-file=" & quoted form of logFile & " " & quoted form of sourceFolder & " " & quoted form of destinationFolder
-- Führe den rsync-Befehl aus und überwache die Ausgabe
try
tell application "Terminal"
do script rsyncCommand -- Startet den rsync-Befehl im Terminal
activate -- Aktiviert das Terminal
end tell
-- Warte, bis der rsync-Befehl abgeschlossen ist, indem wir den Terminal-Prozess überwachen
delay 2 -- Kurze Verzögerung, um sicherzustellen, dass das Terminal geöffnet wird (optional)
-- Warten auf den Abschluss des Prozesses im Terminal
do shell script "while pgrep -x rsync > /dev/null; do sleep 1; done"
display dialog "Der rsync-Vorgang wurde erfolgreich abgeschlossen!" buttons {"OK"} default button "OK"
on error errMsg
display dialog "Es gab einen Fehler: " & errMsg buttons {"OK"} default button "OK"
return
end try
-- Unmount von Volumes
set myCommand to "diskutil unmount /Volumes/Cloud" -- Ersetze diesen Befehl durch deinen gewünschten Befehl
try
set commandOutput to do shell script myCommand
display dialog "Volume Cloud wurde erfolgreich unmountet: " & commandOutput buttons {"OK"} default button "OK"
on error errMsg
display dialog "Fehler beim Unmounten von Cloud: " & errMsg buttons {"OK"} default button "OK"
end try
set myCommand to "diskutil unmount /Volumes/Backup" -- Ersetze diesen Befehl durch deinen gewünschten Befehl
try
set commandOutput to do shell script myCommand
display dialog "Volume Backup wurde erfolgreich unmountet: " & commandOutput buttons {"OK"} default button "OK"
on error errMsg
display dialog "Fehler beim Unmounten von Backup: " & errMsg buttons {"OK"} default button "OK"
end try
tell application "TextEdit"
try
open POSIX file logFile
on error errMsg
display dialog "Fehler: " & errMsg
end try
end tell
tell application "Terminal"
close window 1
end tell
return -- Beendet das Skript hier
Ich habe noch ein zusätzliche Information:
wenn ich versuchen die erzeugte Datei mit dem Finder zu öffnen, funktioniert es ein wandfrei.