Es gibt ähnliche Fragen für Linux und Mac , aber ich bin nach einer Windows-Lösung hier.
Das Problem ist wie folgt: Ich möchte mehrere (js) Skriptdateien in einen Ordner schreiben und diesen Ordner von einem Programm auf Dateiänderungen und das Hinzufügen neuer Dateien überwachen lassen und in jedem Fall einen Befehl ausführen (um alle zu einer zusammenzufassen) einzelne Datei).
Die Lösung muss:
- Überwachen Sie sowohl Dateiänderungen als auch das Hinzufügen neuer Dateien in einem Ordner.
- Führen Sie einen Befehl nur aus, wenn sich Änderungen ergeben.
Es ist am besten, wenn es sich um eine integrierte Lösung handelt (wie ein JScript- oder VBscript-Snippet) oder um eine Lösung, die keine Installation erfordert.
windows
filesystems
monitoring
Camilo Martin
quelle
quelle
Antworten:
Es gibt ein Programm namens Belvedere, das den Trick machen könnte.
http://ca.lifehacker.com/341950/belvedere-automates-your-self+cleaning-pc
Es ist eine eigenständige Windows-App, die im Hintergrund ausgeführt wird.
Ich habe es so eingerichtet, dass mein Download-Ordner auf Dateien mit bestimmten Erweiterungen mit den letzten Änderungsdaten eines Tages überwacht wird. Die gefundenen Dateien werden gelöscht. Sie können jedoch stattdessen eine Aktion ausführen.
quelle
"{0}{1}"
im Parameterfeld, einschließlich der Anführungszeichen). Einziges Problem: Sie können nicht für jeden Ordner einen eigenen Befehl definieren. Nur eine, weltweit.Ich hatte guten Erfolg mit einem alten Programm namens Log Monitor. Es ist uralt und längst verlassen. Aber es erfüllt den Zweck ziemlich gut.
http://www.freeware-guide.com/download/index2.html
quelle
Zu diesem Zweck habe ich ein einfaches Dienstprogramm erstellt: https://github.com/benblamey/when_changed
Verwendung: when_changed (Dateipfad) (Befehl) (optionale Parameter)
zB when_changed C: \ somedir \ foo.txt myapp.exe bar wibble 123
quelle
Mit .NET-Watchfoldern ist das wirklich einfach zu programmieren. Ich bin sicher, dass jemand ein solches Programm gemacht hat.
Habe gerade dieses Juwel für dich gefunden http://www.guidingtech.com/9861/automate-folder-actions-windows-watch-4-folder/
quelle
Ich versuche gerade diese App , die .NET benötigt, aber anscheinend funktioniert sie.
quelle
Dies ist eine so häufige Anforderung, dass ich überrascht bin, dass das Betriebssystem selbst kein praktisches Dienstprogramm enthält.
Wie bereits erwähnt, habe ich LogMonitor in der Vergangenheit erfolgreich eingesetzt. Ich fand diesen Blog-Beitrag jedoch informativ und verwende jetzt Watch 4 Folder .
Hoffentlich hilft dir das weiter.
quelle
Ein weiteres Tool: https://github.com/yankee42/java-file-change-watcher
Vorteile: Plattformunabhängig (Java), klein (10KB).
Haftungsausschluss: Ich bin der Autor
quelle
Wenn Sie eine integrierte Lösung mit JScript oder VBScript erstellen möchten, müssen Sie nach einer Dateisystemüberwachung mit WMI-Ereignissubskriptionen suchen. Grundsätzlich schreiben Sie den Code, um Ordner- und Preform-Aktionen zu überwachen, wenn eine Änderung festgestellt wird, z. B .:
__InstanceCreationEvent
__InstanceDeletionEvent
__InstanceModificationEvent
... und Ihr Skript wird in einem Intervall ausgeführt, in dem darauf geachtet wird, dass diese Ereignisse auftreten. Es gibt viele Ressourcen, aber hier sind einige für VBScript und Powershell:
quelle
NirSoft verfügt über eine Software zum Überwachen von Änderungen an Dateien in Windows
FolderChangesView
Sie können es hier kostenlos herunterladen.
Weitere Informationen
quelle
Sie können http://jnotify.sourceforge.net/ verwenden , um OS-spezifische Dateisystemüberwachungsereignisse zu abonnieren. Der Code ist Jahre alt, funktioniert aber immer noch (zumindest auf dem Windows Server 2013r2, den ich gestern getestet habe).
Auf https://github.com/redbooth/jnotify gibt es auch Github Resurrection von jnotify, das keine eigenständige Demo-App anbietet, aber (laut Commit-Protokollen) einige Fehler behebt .
In Java7 sollte es auch eine Art inotify-ähnliche Dateisystemüberwachung geben, aber ich habe sie noch nicht getestet.
quelle