Cómo crear un applecript para múltiples comandos de terminal dd en secuencia (para duplicación de múltiples unidades USB)

1

Necesito crear un script de Apple para ejecutar los comandos de DD en secuencia, para replicar el mismo archivo .img en varias unidades flash USB

El contexto: la computadora está conectada a un concentrador USB con alimentación con 7 unidades flash usb conectadas y desmontadas por diskutil. Ningún otro dispositivo o disco USB está conectado a la computadora (por lo tanto, a las memorias USB se les asignará un mapeo de recursos de disk1 - disk7)

Los pasos

  • se preparará un archivo llamado "source.img" y se colocará en el escritorio (digamos un archivo .img de un sistema operativo de arranque)

  • se debe pedir a la terminal que cambie el directorio al escritorio

  • con privilegios administrativos (la contraseña puede insertarse en el script o solicitarse una vez al usuario) se debe solicitar que realice:

"sudo dd if = source.img of = / dev / rdisk1 bs = 1m"

  • el script debe esperar hasta que finalice la operación, luego pedirle al terminal que realice otro DD, a disk2 esta vez:

"sudo dd if = source.img of = / dev / rdisk2 bs = 1m"

y nuevamente, espere hasta que finalice la operación y luego pregunte:

"sudo dd if = source.img of = / dev / rdisk3 bs = 1m"

y así sucesivamente con rdisk4, rdisk5, rdisk6, rdisk7.

  • al final de la operación del disco 7, la secuencia de comandos puede apagar el terminal y enviar un mensaje de búsqueda al usuario (o una notificación de audio) de que el proceso de duplicación de USB a las 7 unidades flash ha concluido.

Es una forma de crear un "duplicador USB a bajo costo" para que las imágenes de inicio se coloquen en varios dispositivos, lo necesito para un proyecto escolar para mis estudiantes.

¿Alguien puede ayudar? Soy un cero con Applescript. Y esto será útil para muchos.

¡Gracias! Alberto

    
pregunta user3262273 02.02.2014 - 09:00

1 respuesta

1

Puedes hacer esto con un script de bash.

#!/bin/bash

SOURCE="/Users/username/Desktop/source.img"

dd if=$SOURCE of=/dev/rdisk1 bs=1m
dd if=$SOURCE of=/dev/rdisk2 bs=1m
dd if=$SOURCE of=/dev/rdisk3 bs=1m
dd if=$SOURCE of=/dev/rdisk4 bs=1m
dd if=$SOURCE of=/dev/rdisk5 bs=1m
dd if=$SOURCE of=/dev/rdisk6 bs=1m
dd if=$SOURCE of=/dev/rdisk7 bs=1m

osascript -e 'display notification "Drives complete" with title "Complete!"'

Haz el archivo ejecutable (una vez):

chmod +x ~/Desktop/script.sh

Ejecutarlo con privilegios administrativos:

sudo ~/Desktop/script.sh
    
respondido por el grg 02.02.2014 - 10:30

Lea otras preguntas en las etiquetas