Table of Contents |
---|
Directory Monitoring
...
File Watching
Excerpt |
---|
JobScheduler can monitor file creation |
with a (standalone) job and with an order (and a job chain). |
For further information on how to use file events watching with a job chain we recommend reading Directory Monitoring with File Orders.
...
An example configuration for monitoring a "file-watcher"directory:
Code Block | ||
---|---|---|
| ||
<job name = "scheduler_file_notification_1"> <script language="shell"> <![CDATA[ set echo %SCHEDULER_JOB_NAME% echo %SCHEDULER_TASK_TRIGGER_FILES% rem del %SCHEDULER_TASK_TRIGGER_FILES% ]]> </script> <start_when_directory_changed directory = "c:/temp" regex = "^file[1|2]\.xml$"/> </job> |
This job will watch monitor the folder c:/temp on a Microsoft Windows ® Windows® operating system. The regular expression is used to define which file(s) JobScheduler has to watch. In this example the regex means that every event involving regular expression means that on a directory change (deleting, renaming, adding any file) the job will be startet when the files file1.xml and/or file2.xml will fire the execution of the embedded script (which in this case will echo values for JobScheduler environment variables to stdout).Every change of files in the folder c:/temp which is matched by the filter ^file1\.xml$ starts a task for the job. is in content of the directory.
The SCHEDULER_TASK_TRIGGER_FILES environment variable contains the names of all the filtered files in the c:/temp folder that matches the regular expression at the time when the task directory was started changed- it doesn't just does contain the name of the file that triggered the embedded script only in the case the file matches the regular expression. The file names are maintained in a semicolon separated list.
Note that this behaviour could be critical when two files (e.g. file1.xml and file2.xml) are changed created at the same time.
- Two tasks will then be started for the job.
- In the first task the environment variable SCHEDULER_TASK_TRIGGER_FILES will have the value
c:/temp/file1.xml;c:/temp/file2.xml
. - In the second task the environment variable SCHEDULER_TASK_TRIGGER_FILES will have a value that depends on what the first task has done with the files.
- If, for example, the first task deletes the files in
c:/temp
then SCHEDULER_TASK_TRIGGER_FILES will be empty for the second task.
...
Set up as a standalone job in the JobScheduler editor Editor JOE the script will look like this:
...
For further information on how to use file events watching with a job chain we recommend reading Directory Monitoring with File Orders.
See also
- Environment variable (JobScheduler Reference handbook)
- Directory Monitoring (JobScheduler Reference handbook)