Existe-t-il un moyen de vérifier un dossier / fichier pour les modifications (inclut l'ajout de fichiers, la suppression de fichiers, les modifications de fichiers, ...). L'action "Dossier" dans Automator vérifie uniquement si des fichiers ont été ajoutés récemment.
9
Réponses:
Vous pouvez ajouter une action "Run Shell Script" avec la commande:
Cela vous donnera tous les fichiers et répertoires à l'intérieur
<directory>
qui ont changé depuis le dernier changement de<reference_file>
. Assurez-vous simplement de modifier<reference_file>
chaque fois que vous exécutez le script Automator.Jetez également un œil à la page de manuel de recherche (entrez
man find
dans le terminal) pour plus d'options. La recherche est très puissante et affiner davantage votre recherche est généralement une question de quelques options supplémentaires. Par exemple, pour rechercher uniquement les répertoires modifiés après<reference_file>
:Si la version livrée avec OSX n'est pas suffisante, vous pouvez également essayer la version fournie
findutils
(brew, macports, etc.) qui devrait avoir un peu plus de fonctionnalités.la source
Je ne connais pas de moyen de le faire avec Automator, mais il y a une application dans l'App Store appelée Folder Watch qui peut faire ce que vous demandez.
la source
La dernière fois que j'ai vérifié, Automater utilise Applescript en arrière-plan pour écrire vos actions. Applescript n'a pas beaucoup de profondeur. Bien qu'il puisse obtenir la liste des fichiers dans un répertoire (et donc que vous puissiez savoir quand quelque chose est supprimé), je ne pense pas qu'il puisse calculer les modifications apportées à un fichier.
Ce que vous devez vraiment exploiter, ce sont les notifications du système de fichiers. Et comme c'est une bête, je suivrais les conseils de Kraymer et utiliser launchd. Il a des crochets pour s'exécuter à chaque fois que le contenu d'un dossier est modifié. Lingon (voir aussi sa page SourceForge obsolète ) est une excellente application pour aider les gens à se lancer dans launchd. Vous pouvez écrire votre script / application d'automatisation pour faire tout ce que vous envisagiez de faire lorsque votre répertoire a été modifié et avoir simplement l'appel de tâche launchd.
la source
Vous pouvez vérifier une de mes réponses précédentes , mais il semble que vous vouliez
Launchd n'est pas la voie à suivre pour les modifications de fichiers, fs_usage utilise la machine sous-jacente qui alimente Spotlight.
EDIT: Je me trompe complètement ici. Launchd a exactement cette fonctionnalité requise, c'est-à-dire: faire quelque chose lors d'un changement de fichier ou de répertoire.
Vous créez un fichier .plist.
Criez "SUX XML POUR LES FICHIERS CONF!" (C'est vraiment le cas.)
et vous voudrez utiliser une ou les deux clés ci-dessous dans votre travail launchd.
la source