filenames to watch; separate multiple files with space and put all in quotes
filenames to watch; separate multiple files with space and put all in quotes
-h
-h
show this help
show this help
-i
-i
force inotifywait command
force inotifywait command
-s
-s
force stats command
force stats command
-v
-v
verbose mode; enable showing debug output
verbose mode; enable showing debug output
-w [integer]
-w [integer]
for stats mode: wait time in seconds betweeen each test or on missing file; default: 5 sec
for stats mode: wait time in seconds betweeen each test or on missing file; default: 5 sec
```
```
...
@@ -50,6 +49,10 @@ Each time you touch the testfile it should show "hello".
...
@@ -50,6 +49,10 @@ Each time you touch the testfile it should show "hello".
## Use as systemd service
## Use as systemd service
With running the script as a service can be helpful if you administrate servers and habe developer teams with limited access. Instead of giving sudo permissions you can watch a touchfile to execute something specific as root, i.e. restart Apache httpd. In the real world this file would be touched during an automated deploy process.
Below is just an example service watching a dummy file in /tmp directory.
In `/etc/systemd/system/` create a service config file **onfilechange-demo.service**
In `/etc/systemd/system/` create a service config file **onfilechange-demo.service**
```
```
...
@@ -70,6 +73,6 @@ Type=simple
...
@@ -70,6 +73,6 @@ Type=simple
WantedBy=multi-user.target
WantedBy=multi-user.target
```
```
Check if the service exists `systemctl status onfilechange-demo`. If so you can start and stop it with `systemctl [start|stop] onfilechange-demo`
Check if the service exists `systemctl status onfilechange-demo`. If so you can start and stop it with `systemctl [start|stop] onfilechange-demo`
To start the service on reboot you additionally need to enable it: `systemctl enable onfilechange-demo`.