Ich mache das mit einem kleinen Skript:
#!/bin/bash
for i in NOAH CLARA ; do
if [[ -d /Volumes/$i ]] ; then
rsync -av --delete --progress --size-only --exclude '.DS_Store' --exclude '.Spotlight-V100' --exclude '.fseventsd' --exclude '.Trashes' --exclude '._*' $HOME/tonuino/sdkarte_$i/ /Volumes/$i/
find /Volumes/$i -name ".DS_Store" -exec rm -rf {} \; >/dev/null 2>&1
find /Volumes/$i -name ".Spotlight-V100" -exec rm -rf {} \; >/dev/null 2>&1
find /Volumes/$i -name ".fseventsd" -exec rm -rf {} \; >/dev/null 2>&1
find /Volumes/$i -name ".Trashes" -exec rm -rf {} \; >/dev/null 2>&1
find /Volumes/$i -name "._*" -exec rm -rf {} \; >/dev/null 2>&1
sudo diskutil eject /Volumes/$i/
fi
done
In meinem HOME gibt es ein Verzeichnis namens “tonuino”, darin dann “sdkarte_CLARA” und “sdkarte_NOAH” die jeweils den exakten Inhalt der SD-Karte haben, also mit mp3 und advert Verzeichnis. Die SD-Karten müssen ebenso benannt sein, damit sie unter dem Namen unter /Volumes/ eingebunden werden.
Aufgrund der Unzulänglichkeiten des FAT32-Dateisystems gegenüber APFS oder extX läuft rsync mit der “–size-only” Option, ansonsten würde es jedesmal alle Dateien kopieren. Würde scheitern wenn man den Inhalt einer Datei ändert und die Datei nachher die exakt gleiche Grösse hat, aber das halte ich für unwahrscheinlich genug.