11 votos

Cómo ejecutar Applescript en soporte de disco

Quiero ejecutar un Applescript cuando me monte un disco específico. No lo es si la secuencia de comandos se encuentra en el disco o no, sólo debe funcionar cuando OS X monta el disco.

Traté de hacerlo con acciones de carpeta, pero parece que no es posible hacerlo de esta manera.

Aclaración:

  1. Llego a casa con mi Macbook
  2. Puedo conectar mi Hub USB en el dispositivo
  3. Discos externos están montados en OS X
  4. Mi Applescript se ejecuta, hace algunas cosas en esos discos

Quiero automatizar el paso 4.

12voto

Aidan Ryan Puntos 5056

La probable solución más robusta es crear un launchd de trabajo con la StartOnMount propiedad -boolean YES :

StartOnMount <boolean>
Esta clave opcional hace que el trabajo que debe iniciarse cada vez que se monta un sistema de archivos.

Esto es cómo lo hace la máquina del tiempo (ver /System/Library/LaunchDaemons/com.apple.backupd-attach.plist ).

4voto

Mike Polen Puntos 3173

Que no menciona bajo que contexto está montando el disco, pero lo de ir por otro camino y montar el disco con el Applescript?

Menciono contexto porque al montar un disco con Applescript es la gran salvedad de que si se trata de un volumen de red, y la red está protegida con contraseña, a continuación, el nombre de usuario y contraseña tendría que ser almacenados como texto sin formato en la secuencia de comandos para una perfecta ejecución.

ACTUALIZACIÓN: UN poco de búsqueda encontró una pregunta similar en otros lugares. Esencialmente, un script puede hacer esto mediante la aplicación de la secuencia de comandos como una Carpeta Acción /Volúmenes:

on adding folder items to this_folder after receiving these_items
    repeat with aItem in these_items
        tell application "Finder"
            if (local volume of aItem) and (name of aItem is "[Name of Hard Drive]") then
                -- do something with the drive
                -- eject aItem
            end if
        end tell
    end repeat
end adding folder items to

0voto

Tim Long Puntos 1317

Una solución sería crear una aplicación de Automator encadenando las siguientes 3 acciones:

  • Obtener elementos de Finder especificados
  • Imagen de disco de montaje
  • Ejecutar AppleScript

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X