2 votos

Cómo copiar elementos de la carpeta en el disco de montaje de automator

quiero copiar automáticamente a una carpeta específica de los elementos cuando el usb está insertado en cualquier momento dado. La lógica de programa:

  1. Una vez que el usb está disponible
  2. simplemente copia todo el contenido de (/Usuarios/x/Documentos/micarpeta) a usb, carpeta, tales como (/Volúmenes/JEFE/micarpeta)
  3. elimina contenido copiado de micarpeta

¿Qué software o scripts podría hacer esto?

1voto

webmarc Puntos 999

Una manera de hacer esto es utilizar Automator:

  1. crear una Carpeta Acción /Volúmenes
  2. desencadenar un Applescript o secuencia de comandos de shell cuando una nueva unidad está montada
  3. hacer la copia
  4. tomar un café (opcional).

Es probable que desee para raspar la salida de system_profiler SPUSBDataType para asegurarte de que no estás jugando con DMGs.

Oooh, la opción 2 de desbordamiento de pila (copiar/pegar como bloque cita a continuación):

Usted puede utilizar launchd para ese propósito. Launchd puede ser configurado para ejecutar automáticamente un programa cuando una ruta de archivo es modificado.

Por ejemplo, la siguiente launchd config plist lanzará el programa /usr/bin/logger cuando la carpeta del escritorio de mi cuenta de usuario es modificado:

<?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>logger</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/logger</string>
        <string>path modified</string>
    </array>
    <key>WatchPaths</key>
    <array>
        <string>/Users/sakra/Desktop/</string>
    </array>
</dict>
</plist>

Para activar la configuración plist guardarlo en la carpeta en LaunchAgents su carpeta de la Biblioteca como "registrador.plist".

A partir de la cáscara, entonces puede utilizar el comando launchctl a activar el registrador.plist ejecutando:

$ launchctl load ~/Library/LaunchAgents/logger.plist

La carpeta del escritorio, ahora se está monitorizando. Cada vez que se cambia usted debe ver una salida en el sistema.registro (uso de la Consola.de la aplicación). A desactivar el registrador.plist, ejecute:

$ launchctl unload ~/Library/LaunchAgents/logger.plist

El archivo de configuración anterior se usa el WatchPathsopción. Alternativamente, usted puede también utilizar el QueueDirectories opción. Ver el launchd hombre de la página para más información.

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: