https://github.com/dnephin/filewatcher
A command line tool to execute commands when files are modified.
https://github.com/dnephin/filewatcher
Last synced: about 1 month ago
JSON representation
A command line tool to execute commands when files are modified.
- Host: GitHub
- URL: https://github.com/dnephin/filewatcher
- Owner: dnephin
- License: apache-2.0
- Created: 2015-12-30T20:46:19.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-03-14T17:55:18.000Z (about 4 years ago)
- Last Synced: 2025-03-18T11:03:51.438Z (about 2 months ago)
- Language: Go
- Homepage:
- Size: 57.6 KB
- Stars: 51
- Watchers: 5
- Forks: 9
- Open Issues: 3
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
File Watcher
============File Watcher uses https://github.com/go-fsnotify/fsnotify to watch the
filesystem and execute a command when a file changes.Install
-------.. code::
go get github.com/dnephin/filewatcher
Examples
--------**Run go tests**
Run go tests for a package when a file is modified, exclude vim swap files.
.. code::
filewatcher -x '**/*.swp' -x vendor/ -x .git go test './${dir}'
Usage
-----See ``filewatcher --help``
**Excludes**
File globbing patterns are used to match files, with one addition.
See https://golang.org/pkg/path/filepath/#Match for the standard file matching
rules. Exclude paths may also use a ``**/`` prefix, which matches the pattern
against any directory. This may be used to ignore files with a specific
extension that may occur in any directory in the hierarhcy.**Commands**
Commands may include variables in the form ``${variable}`` which will be
replaced with a value based on the file that was modified. Supported
variables are:* ``filepath`` - the relative path to the file that changed
* ``dir`` - the directory of the file that changed
* ``relative_dir`` - the directory of the file that changes with a ./ prefixThese values are also set as environment variables for the process:
* ``TEST_FILENAME`` - the relative path to the file that changed
* ``TEST_DIRECTORY`` - the relative path to the directory of the file that
changed