onFileSystemChange

Add a filesystem watch

Description

onFileSystemChange events are triggered whenever there is a change to a watched path or file.

Usage

event onFileSystemChange name=path { code block }

!event onFileSystemChange name

Valid Interrupts

Payload

The following payload is passed to the function via stdin:

{
    "Name": "",
    "Interrupt": {
        "Path": "",
        "Operation": ""
    }
}

Name

This is the name you specified when defining the event

Interrupt/Path

The path of the file that has triggered the event

Interrupt/Operation

This is the filesystem operation that triggered the event. The following strings could be present in the Operation field:

Sometimes you might see more than one operation per interrupt. If that happens the operation will be pipe delimited. For example create|chmod

Event Return

This event doesn’t have any $EVENT_RETURN parameters.

Examples

This will automatically add any new files in your current working directory to git upon file creation:

event onFileSystemChange example=. {
    -> set event
    if { $event.Interrupt.Operation =~ "create" } then {
        git add $event.Interrupt.Path
    }
}

Detail

Standard out and error

Stdout and stderr are both written to the terminal.

POSIX only

At this stage, this event isn’t available for Windows nor Plan 9. This is chiefly down to a lack of testers on either platform so rather than release untested and potentially broken code, the decision was made to restrict this event to Linux, macOS and UNIX systems instead.

See Also


This document was generated from builtins/events/onFileSystemChange/onfilesystemchange_doc.yaml.

This site's content is rebuilt automatically from murex's source code after each merge to the master branch. Downloadable murex binaries are also built with the website.

Last built on Wed Sep 18 21:18:57 UTC 2024 against commit c037883c03788357164e9846c84d9f777251495d9452a8e.

Current version is 6.3.4225 (develop) which has been verified against tests cases.