https://github.com/liquidityc/mon
A file event monitor
https://github.com/liquidityc/mon
Last synced: 11 months ago
JSON representation
A file event monitor
- Host: GitHub
- URL: https://github.com/liquidityc/mon
- Owner: LiquidityC
- License: gpl-3.0
- Created: 2022-11-11T07:46:50.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-05-02T17:44:02.000Z (about 2 years ago)
- Last Synced: 2024-05-03T04:31:00.080Z (about 2 years ago)
- Language: C
- Size: 95.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/LiquidityC/mon/actions/workflows/build-check.yml)
[](https://scan.coverity.com/projects/liquidityc-mon)
## mon - react to changes in a file system path
**mon** Is a utility program that can trigger user provided shell commands when
file system changes occur in a provided directory path. It can be useful if you
want to trigger tests automatically while developing some code. Or
automatically move new files once created. The main goal is to do it's job
through a simple command line interface and not require any deep understanding
of file system events.
## Synopsis
**mon** -c *COMMAND* *PATH*
## Examples
**mon** -c *"make test"* */path/to/dir*
## Compiling
In the source root type `make`. To build a release version use `RELEASE_BUILD=1
make`. You can also generate man files `make man`, this requires
[pandoc](https://pandoc.org/). Running tests and formatting the source code
`make check` and `make fmt` require
[cppcheck](https://cppcheck.sourceforge.io/) and
[clang-format](https://clang.llvm.org/docs/ClangFormat.html).
## Installation
The command `make install` will build a file structure of the project in the
linux format. By default this will b output into the `/out`
directory. This can be controlled by the `PREFIX` environment variable. Eg.
`PREFIX=~/.local make install`. In most cases you will want to combine this
with the `RELEASE_BUILD` environment variable. Eg. `RELEASE_BUILD=1
PREFIX=~/.local make install`