
Guión:
- Grabe contenido usando la cámara en la tarjeta CF.
- Copie el contenido de la tarjeta CF al disco duro local en la carpeta denominada (por ejemplo, 20120311-D01). No me importa cambiar la secuencia de comandos para actualizar el nombre que quiero usar, no tiene que ser una carpeta con nombre automático.
- Copie el contenido de la carpeta HD local a USB HD (segunda copia).
- Purgar tarjeta CF.
He actualizado mi kit de viaje para que sea MacBook Air en lugar del sistema Windows que usaba anteriormente. En la configuración anterior, utilicé secuencias de comandos de robocopy para los pasos 2 y 3. El beneficio adicional fue que el paso tres se configuró para ser una operación reflejada (sincronización/actualización), de modo que si tenía tiempo para posprocesar fotos o videos, podía volver a ejecutarlos. y solo sincronizaría los archivos modificados.
Soy nuevo en OSX y mis pobres habilidades de investigación aparecieron usando posiblemente "ídem" o "rsync" y me dijeron que buscara "clonador de copias" y "superduper".
En resumen, me gustaría un método simple para copiar el contenido de mi tarjeta CF a mi Macbook Air y luego una segunda copia a una unidad USB externa por seguridad.
Respuesta1
Normalmente hago rsync -av /home/source/folder/here /Volumes/Disk1/destination/folder/here en mis scripts con rsync, y para programar uso Lingon. Crontab realmente no estaba funcionando para mí, pero Lingon funciona todo el tiempo. Encontré una descarga gratuita de GPL 2.2 y me funciona perfectamente, pero incluso puedes comprar la versión 3 directamente desde la Mac App Store por $3. Recuerde que todas las unidades de red, las unidades USB/Firewire conectadas están en el directorio /Volumes como su propia carpeta. ¡Espero que esto ayude!
Respuesta2
Lo primero que probablemente deberías intentar seríaColor avellana. También puedes intentar modificar un script de shell como este.
#!/bin/bash
dir1=/Volumes/CF/Photos
[[ ! -e "$dir1" ]] && exit
dir2=~/"Pictures/Photos"
mkdir -p "$dir2"
i=1
date="$(date +%Y%m%d)"
target="$dir2/$date-D$(printf %02d $i)"
while [[ -e "$target" ]]; do
((++i))
target="$dir2/$date-D$(printf %02d $i)"
done
mkdir "$target"
mv "$dir1" "$target"
echo "Moved $dir1/ to $target/"
dir3="/Volumes/Backup/Photos"
[[ ! -e "$dir3" ]] && exit
rsync -a "$dir2" "$dir3"
echo "Copied $dir2/ to $dir3/"
Para ejecutarlo siempre que se monte el volumen CF (o se modifiquen algunos archivos), puede guardar una lista de propiedades como esta, por ejemplo, ~/Library/LaunchAgents/com.superuser.411351.plist
y cargarla con launchctl load ~/Library/LaunchAgents/com.superuser.411351.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>
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.superuser.411351</string>
<key>Program</key>
<string>/usr/bin/copyphotos</string>
<key>WatchPaths</key>
<array>
<string>/Volumes/CF/</string>
</array>
</dict>
</plist>