Wenn Sie die launchdÜberwachung /Volumesals WatchPath festlegen, kann jedes Mal, wenn ein Laufwerk bereitgestellt wird, ein Skript ausgeführt werden. Stellen Sie dieses Skript einfach so ein, dass überprüft wird, ob Ihr Airport Extreme-Laufwerk aktiviert ist, und führen Sie dann die Kopie aus, falls dies der Fall ist. Zum Beispiel:
#!/bin/bash
if [ -e /Volumes/AirportExtremeDriveName ]
rsync -aE /a/specific/folder/ /Volumes/AirportExtremeDriveName/another/specific/folder/
fi
Ich schlage vor rsync, dass es klug genug ist, keine Dateien zu kopieren, die sowohl in der Quelle als auch im Ziel identisch sind, was die Dinge ohne Ende beschleunigen wird. Wenn Sie das -deleteArgument hinzufügen , werden alle Dateien, die in der Quelle nicht mehr vorhanden sind, vom Ziel gelöscht.
Ohne zusätzliche Kosten, hier ist das launchdSkript. Speichern Sie das Folgende in~/Library/LaunchAgents/some.meaningful.name.plist
<?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">
<dict>
<key>Label</key>
<string>some.meaningful.name</string>
<key>LowPriorityIO</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/where/you/saved/your/script.sh</string>
</array>
<key>WatchPaths</key>
<array>
<string>/Volumes</string>
</array>
</dict>
</plist>
Laden Sie dann den launchdJob mit:
launchctl load ~/Library/LaunchAgents/some.meaningful.name.plist
Es wird automatisch geladen, wenn Sie sich anmelden und entladen, wenn Sie sich abmelden.