How to trigger a task at any change on a folder with Windows Server Task Scheduler?

41,772

Solution 1

You can certainly do this using Powershell and WMI Events.

Here's a link that describes setting up PowerShell to monitor events.

http://www.pavleck.net/powershell-cookbook/ch31.html (Wayback Link, as it appeared 5 Nov 2013)

Here's a link that describes the kind of events you'll be looking for:

http://blogs.technet.com/b/heyscriptingguy/archive/2005/04/04/how-can-i-monitor-for-different-types-of-events-with-just-one-script.aspx

Solution 2

You can trigger a task based on an event that is logged to the event log, however there is no functionality that will create an event based on a new file being created or a file being modified.

You could use object access tracking events (from the security log) to a certain degree, but since they generate a lot of noise, it's unlikely that this would work very well.

You can use a 3rd party product (free version available) EventSentry to accomplish this however - either in combination with the task scheduler, or stand-alone. It includes a file monitoring feature that will log events to the event log when a file is added, changed, or removed (including checksum changes). You can then trigger a process based on the event that was logged.

There is also a free version (EventSentry Light) that you could use in combination with the Task Scheduler. EventSentry Light will first generate the event based on file monitoring (in the application event log), and you can then use that as the trigger to the task scheduler.

Share:
41,772

Related videos on Youtube

Julio Guerra
Author by

Julio Guerra

Software Engineer http://fr.linkedin.com/in/guerrajulio

Updated on September 18, 2022

Comments

  • Julio Guerra
    Julio Guerra over 1 year

    Is it possible to start a script every time a folder tree is modified.

    E.g.:

    root
      dir1
        file1
      dir2
        file1
        file2
    

    root would be listened and if, for example, file2 is modified or a new file is added wherever in the directory tree, a script is started.

    A subquestion would be : are scheduled tasks triggered by events queued ?

    Thanks for your help!