Este es el script de una rutina similar de borrado masivo / copia que hice con la ayuda de klanomath en este pregunta relacionada - Encuentre un disco adjunto específico, no volumen, por Applescript al que debe hacer referencia para ver cómo se extrae el nombre del dispositivo.
Guardé el script como un Servicio de Automatización, que luego até a un trivial, de hecho, muy difícil de hacer por accidente Cmd ⌘ Opt Shift ⇧ F19 comando clave en
Prefs del sistema > Teclado > Accesos directos > Servicios
así que puedo activar manualmente cada operación & no correr el riesgo de ser despedido accidentalmente.
La rutina encuentra el objetivo potencial al usar el nombre del dispositivo de mi lector de tarjetas USB, lo que reduce el riesgo de formatear al menos el disco incorrecto, aunque no tiene ninguna medida de seguridad para la tarjeta SD individual & actuará en cualquier tarjeta del lector cuando golpee la combinación de teclas.
on run {input, parameters}
-- see https://apple.stackexchange.com/questions/207089/find-specific-attached-disk-not-volume-by-applescript/207103#207103 for BSD Disk workings
global diskName
set diskName to "DISK_NAME"
global BSD_disk
--using ioreg...
set BSD_disk to do shell script "ioreg -l | grep -A 10 SD/MMC/MS/MSPRO | awk '/disk/ {gsub(\"\\"\",\"\"); print $NF}'"
if BSD_disk is not "" then
try
--FAT 16
do shell script "diskutil eraseDisk \"MS-DOS FAT16\" " & diskName & " MBRFormat " & BSD_disk
on error
try
--FAT 32 [>2GB cards]
do shell script "diskutil eraseDisk \"MS-DOS\" " & diskName & " MBRFormat " & BSD_disk
end try
end try
delay 2
tell application "Finder"
set x to (POSIX file "/Users/[user]/BatchFolder") as alias
try
set dest to (POSIX file "/Volumes/" & diskName as string) as alias
on error return
end try
duplicate every item of x to dest
delay 1
if disk diskName exists then
eject disk diskName
end if
beep
end tell
else
return "no SD Card detected"
end if
return input
end run