Il y a des questions similaires pour Linux et Mac , mais je suis après une solution Windows ici.
Le problème est le suivant: Je veux écrire plusieurs fichiers de script (js) dans un dossier et demander à un programme de surveiller ce dossier pour détecter les modifications de fichier et les nouveaux fichiers ajoutés. un seul fichier).
La solution doit:
Il serait préférable que ce soit une solution intégrée (comme un extrait de code JScript ou VBscript) ou quelque chose qui ne nécessite pas d'installation.
Il existe un programme appelé Belvedere qui pourrait faire l'affaire.
http://ca.lifehacker.com/341950/belvedere-automates-your-self+cleaning-pc
C'est une application Windows autonome qui s'exécute en arrière-plan.
Je l'ai configuré pour contrôler dans mon dossier de téléchargement les fichiers portant certaines extensions avec les dernières dates modifiées d'un jour. Les fichiers qu'il trouve sont supprimés, mais vous pouvez le faire exécuter à la place.
J'ai eu un bon succès avec un ancien programme appelé Log Monitor. C'est ancien et abandonné depuis longtemps. Mais cela sert assez bien.
J'ai créé un utilitaire simple à cette fin: https://github.com/benblamey/when_changed
usage: when_changed (chemin du fichier) (commande) (paramètres-facultatifs)
par exemple. when_changed C:\somedir\foo.txt barre d’application wibble 123
Avec les répertoires de suivi .NET, il est très facile de coder. Je suis sûr que quelqu'un a fait un tel programme.
Je viens de trouver ce petit bijou pour vous http://www.guidingtech.com/9861/automate-folder-actions-windows-watch-4-folder/
J'essaie actuellement cette application , qui nécessite .NET, mais qui semble faire l'affaire.
Encore un autre outil: https://github.com/yankee42/Java-file-change-watcher
Avantages: indépendant de la plate-forme (Java), petit (10 Ko).
Disclaimer: je suis l'auteur
Si vous souhaitez utiliser une solution intégrée à l'aide de JScript ou de VBScript, vous devez rechercher la surveillance du système de fichiers à l'aide d'abonnements d'événements WMI. En principe, vous écrivez le code pour surveiller un dossier et des actions de préforme lorsqu'un changement est détecté, tel que:
__InstanceCreationEvent
__InstanceDeletionEvent
__InstanceModificationEvent
... et votre script s'exécute sur un intervalle surveillant ces événements. Il existe de nombreuses ressources, mais en voici quelques unes pour VBScript et Powershell:
C’est une exigence si courante que je suis surpris de constater qu’il n’ya pas d’utilitaire pratique intégré au système d’exploitation lui-même.
Quoi qu'il en soit, comme mentionné précédemment, j'ai utilisé LogMonitor avec succès dans le passé. Cependant, j'ai trouvé ce billet de blog informatif et j'utilise le dossier de suivi 4 maintenant .
J'espère que cela vous aidera.
NirSoft dispose d'un logiciel permettant de contrôler les modifications de fichiers sous Windows
FolderChangesView
FolderChangesView est un outil simple qui surveille le dossier ou le lecteur de disque choisi et répertorie chaque nom de fichier en cours de modification, de création ou de suppression pendant la surveillance du dossier. Vous pouvez utiliser FolderChangesView avec n’importe quel lecteur de disque local ou avec un partage réseau distant, à condition d’obtenir une autorisation de lecture sur le dossier sélectionné.
vous pouvez le télécharger gratuitement de ici
Plus d'infos
Vous pouvez utiliser http://jnotify.sourceforge.net/ pour vous abonner aux événements de surveillance du système de fichiers spécifique au système d'exploitation. Le code a plusieurs années mais il fonctionne toujours (du moins sur Windows Server 2013r2, je le testais hier).
Il y a aussi la résurrection github du projet jnotify sur https://github.com/redbooth/jnotify qui ne propose pas d'application de démonstration autonome mais (selon les journaux de validation) corrige quelques bugs.
En Java7, il devrait y avoir une sorte de surveillance de système de fichiers similaire à inotify, mais je ne l’ai pas encore testée.