<p>I want to run a command as soon as a certain text appears in a log file. How do I do that in Bash?</p>

Use command
```
```
tail -f file.log | grep --line-buffered "my pattern" | while read line
do
  echo $line
done
```
```
The
```
--line-buffered
```
is the key here, otherwise the read will fail.