1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
RWC(1) General Commands Manual RWC(1)
NAME
rwc – report when changed
SYNOPSIS
rwc [-0cdep] [path ...]
DESCRIPTION
rwc takes a list of files or directories, watches them using inotify(7),
and prints each file name as absolute path when it changed. If path is a
single dash (‘-’) or absent, rwc reads file names from the standard
input.
Watching a directory will result in watching all changes to files which
resides directly in that directory.
The options are as follows:
-0 Read input filenames seperated by NUL bytes. Likewise, output
filenames seperated by NUL bytes.
-c Detect all file creations, including open(2) with O_CREAT,
mkdir(2), link(2), symlink(2), and bind(2). In this case,
created files are prefixed by ‘+ ’ (that is, a plus and a space).
This option has the side-effect of printing files twice that are
created and immediately changed after.
-d Also detect file deletion. In this case, deleted files are
prefixed by ‘- ’ (that is, a dash and a space).
-e Exit after the first reported change.
-p Pipe mode; don't report changes while the standard output pipe is
not empty. Use this to pipe rwc to programs which read standard
input slowly.
EXIT STATUS
The rwc utility exits 0 on success, and >0 if an error occurs.
EXAMPLES
Watch all source files and run make(1) when something changes:
% git ls-files | rwc -p | xe -v -s make
Make a sound when a download is done:
% rwc ~/Downloads | xe -s 'mpv ~/.sounds/bing.wav'
SEE ALSO
entr(1), inotifywatch(1), wendy(1)
AUTHORS
Leah Neukirchen <leah@vuxu.org>
CAVEATS
rwc is limited by some restrictions of inotify(7). You can only watch
files and directories you can read, and the amount of inotify descriptors
is limited. Watching directories is not recursive.
rwc only uses one watch descriptor per directory, and filters file names
itself. This allows tracking files which get safely written by unlink(2)
and rename(2), and also watching files which don't exist yet.
Many tools like to create temporary files in their working directory,
which may distort the output.
LICENSE
rwc is in the public domain.
To the extent possible under law, the creator of this work has waived all
copyright and related or neighboring rights to this work.
http://creativecommons.org/publicdomain/zero/1.0/
Void Linux January 3, 2021 Void Linux
|