watchfiles(1)

watchfiles1

Simple, modern and high performance file watching

Usage

watchfiles [--ignore-paths <IGNORE_PATHS>] [{--target-type (command | function | auto)}] [--filter <FILTER>] [--args <ARGS>] [--verbose] [--non-recursive] [{--verbosity (warning | info | debug)}] [--sigint-timeout <SIGINT_TIMEOUT>] [--grace-period <GRACE_PERIOD>] [--sigkill-timeout <SIGKILL_TIMEOUT>] [--ignore-permission-denied] target [paths ...]

watchfiles {(-h | --help)}

watchfiles {(-V | --version)}

Overview

watchfiles watches one or more directories and executes either a Shell command or a Python function on file changes.

Arguments

target  Command or dotted function path to run
paths   Filesystem paths to watch, defaults to current directory

Options

-h | --help
Show this help message and exit
--ignore-paths <IGNORE_PATHS>
Specify directories to ignore, to ignore multiple paths use a comma as
separator, e.g. "env" or "env,node_modules"
--target-type (command | function | auto)
Whether the target should be intercepted as a shell command or a Python
function, defaults to "auto" which infers the target type from the target
string
--filter <FILTER>
Which files to watch, defaults to "default" which uses the
"DefaultFilter", "python" uses the "PythonFilter", "all" uses no filter,
any other value is interpreted as a Python function/class path which is
imported
--args <ARGS>
Arguments to set on sys.argv before calling target function, used only if
the target is a function
--verbose
Set log level to "debug", wins over --verbosity
--non-recursive
Do not watch for changes in sub-directories recursively
--verbosity (warning | info | debug)
Log level, defaults to "info"
--sigint-timeout <SIGINT_TIMEOUT>
How long to wait for the sigint timeout before sending sigkill.
--grace-period <GRACE_PERIOD>
Number of seconds after the process is started before watching for
changes.
--sigkill-timeout <SIGKILL_TIMEOUT>
How long to wait for the sigkill timeout before issuing a timeout
exception.
--ignore-permission-denied
Ignore permission denied errors while watching files and directories.
-V | --version
Show program's version number and exit

Examples

Watching the current directory and calling a Python function:

$ watchfiles foobar.main

Watching Python files in two local directories and calling a Shell command:

$ watchfiles --filter python 'pytest --lf' src tests

Bugs

Bugs can be reported to your distribution's bug tracker or upstream at <https://github.com/samuelcolvin/watchfiles/issues>

Author

Louis-Philippe Véronneau

From python3-watchfiles 0.24.0-1+b2 in Debian 13 (Trixie). Parsed by carta from the page's man source.