How to execute a command whenever a file changes?
- by Denilson Sá
I want a quick and simple way to execute a command whenever a file changes. I want something very simple, something I will leave running on a terminal and close it whenever I'm finished working with that file.
Currently, I'm using this:
while read; do ./myfile.py ; done
And then I need to go to that terminal and press Enter, whenever I save that file on my editor. What I want is something like this:
while sleep_until_file_has_changed myfile.py ; do ./myfile.py ; done
Or any other solution as easy as that.
BTW: I'm using Vim, and I know I can add an autocommand to run something on BufWrite, but this is not the kind of solution I want now.
Update: I want something simple, discardable if possible. What's more, I want something to run in a terminal because I want to see the program output (I want to see error messages).
About the answers: Thanks for all your answers! All of them are very good, and each one takes a very different approach from the others. Since I need to accept only one, I'm accepting the one that I've actually used (it was simple, quick and easy-to-remember), even though I know it is not the most elegant.