Simple file watcher
Eye watches file pattern regex and executes a command on changes.
.eyerc file present.
With command line arguments.
eye [-R] -p <regex_pattern> -c <command>
Eye will search for an
.eyerc file in current directory or in the home
directory. If present it will load the settings. Any command line
parameters will override the resource file settings.
eye -r -p '\.go$' -c 'go build'
Watch files in current directory with extension
.go and execute
go build on changes:
To use for Golang development the
eye-go.sh can be used as command.
eye-go.sh to your Golang project directory and change it to suit your needs. Then issue the command:
eye -p '\.go$' -c './eye-go.sh -i 500'
Eye will watch all Go files in current directory and below for changes
every half second. If any matching files changes the
will be executed. The script will build, lint, vet, and look for TODOs
in the project.
--help- print usage information.
-p <regex_pattern>- matching pattern for files to watch, mandatory.
-c <command>- the command to execute on changes, mandatory.
-R- do not recurse sub directories, optional.
- `-i - number of milli seconds to wait between checks, default value 1000 ms (1 s).
Resource file format is simple, just a
: separated list of key and
value. Lines starting with
! is considered to be comments and empty
lines are ignored.
Example resource file with all possible settings:
! Eye resource file pattern: \.go$ command: go test ./... recursive: true interval-millis: 500
git clone https://github.com/callerobertsson/eye.git cd eye go install
The code in this project is licensed under GPLv3 license.