简体   繁体   中英

How do I run a script every time I save a file in Linux?

每次在Linux中保存文件时如何运行脚本?

Linux has a subsystem call inotify which can cause filesystems to report changes in the filesystem to applications.

Your linux system probably has a package called incron which makes using inotify very easy. (Or search your available packages for any package whose description contains the word 'inotify').

Setting up incron is very much like setting up cron , except whereas cron executes a script at a specified time and date, incron executes a script whenever a specified file or directory changes.

PS. On Ubuntu (for example), incron is this package and is installed with

sudo apt-get install incron

I was trying to do the same thing and ended up writing a python script to do it for me.

https://github.com/bawigga/spy

usage:

$ ./spy myscript.py
... your script output ...

$ ./spy --help
Usage: spy [OPTIONS] [WATCH]

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -c, --clear           clear the screen after each execution
  -e COMMAND, --exec=COMMAND
                        path to the program to execute
  -i INTERVAL, --interval=INTERVAL
                        (in seconds) set the time interval to check for file
                        modifications

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM