# Overwatch Raku Overwatch can be used to restart programs when they crash or when files are modified. ## Usage ``` overwatch [options] [] ``` ## Required ``` ``` A program/script name is required. ## Options ### Executable ``` -e= | --execute= ``` Default: ```raku``` The executable that runs the specified . ### Keep Alive ``` -k | --keep-alive ``` Default: ```True``` Automatically rerun the program. ### Exit on error ``` -x | --exit-on-error ``` Default: ```False``` Stop overwatch if the exited with a non-zero code. ### Git ``` -g | --git ``` Default: ```0``` Checks default upstream git repository and pulls if local is behind. A value of zero or less disables this option. ### Quiet ``` -q | --quiet ``` Default: ```False``` Prevents overwatch from printing informative messages to stdout. ### Watch ``` -w | --watch ``` Default: ```[]``` Directories/files to watch for changes, when a file is changed the is restarted. ### Filter ``` -f | --filter ``` Default: ```''``` Comma separated list of file extensions to watch for changes. List applies to all ```watch``` dirs. #### Notes * Multiple -w switches may be specified * To negate a [True|False] value you can use -/q (same as -q=False) ### Process Args ``` -p | --pargs ``` Default: ```[]``` List of arguments to start the executable with. Example `overwatch -p='-e' 'sleep 5'` would monitor the process: `raku -e 'sleep 5'` ## Examples ``` overwatch app.pl6 ``` ``` overwatch -w=models mvc.pl6 ``` ``` overwatch -w=/tmp/ -e=/bin/sh shellscript.sh --shellarg=go ``` ## License [Artistic License 2.0](http://www.perlfoundation.org/artistic_license_2_0)