Es allí una manera de comprobar una carpeta/archivo para que los cambios (incluye la adición de archivos, eliminación de archivos, cambios en los archivos,...). La Carpeta 'acción' en Automator es sólo la comprobación de si los archivos están recién agregado.
Respuestas
¿Demasiados anuncios?Usted puede agregar una secuencia de Comandos de Shell" acción con el comando:
find <directory> -newermm <reference_file>
Esto le dará todos los archivos y directorios dentro de la <directory>
que han cambiado desde el último cambio de <reference_file>
. Sólo asegúrese de modificar el <reference_file>
cada vez que se ejecute el script de Automator.
También dar un vistazo a la página del manual find (enter man find
en la terminal) para más opciones. Encontrar es muy potente y más refinar su búsqueda es generalmente una cuestión de un par de opciones adicionales. E. g. para buscar sólo para los directorios modificados después de la <reference_file>
:
find <directory> -type d -newermm <reference_file>
Si la versión que se incluye con OSX no es suficiente, también puede probar la versión que viene con findutils
(brew, macports etc), que deben tener un poco más características.
Así que la última vez que revisé, Automater está usando Applescript en el fondo de secuencia de comandos de sus acciones. Applescript no tiene mucha profundidad. Mientras que se puede obtener la lista de archivos en un directorio (y por lo tanto, usted podría encontrar que cuando algo se elimina), no creo que se puede calcular los cambios a un archivo.
Lo que realmente necesitan para aprovechar es el archivo de avisos del sistema. Y ya que es una bestia, me gustaría tener kraymer la asesoría y el uso launchd. Tiene ganchos para ejecutar en cualquier momento el contenido de una carpeta cambia. Lingon (véase también su anticuado página de SourceForge) es una gran aplicación para ayudar a la gente a saltar a launchd. Usted puede escribir su script de automator/aplicación para hacer lo que estaban planeando hacer cuando su directorio fue modificado y sólo tiene el launchd tarea de la llamada.
Usted puede comprobar en una primera respuesta de la mía, pero parece que quieres
fs_usage -f filesys
Launchd no es el camino a seguir para los cambios de archivos, fs_usage utiliza el subyacente de la máquina que los poderes centro de atención.
EDIT: estoy totalmente equivocado aquí. Launchd tiene exactamente lo que la funcionalidad requerida, es decir: hacer algo en un archivo o directorio cambio.
Hacer una .plist archivo.
Gritar "XML SUX PARA CONF ARCHIVOS!" ( Lo que realmente hace. )
y usted querrá usar una o ambas de las teclas a continuación en su launchd trabajo.
WatchPaths <array of strings>
This optional key causes the job to be started if any one of the listed
paths are modified.
QueueDirectories <array of strings>
Much like the WatchPaths option, this key will watch the paths for modi-
fications. The difference being that the job will only be started if the
path is a directory and the directory is not empty.