如何保存文件时自动运行脚本文件?

我正在编辑一个Linux服务器上的项目。我每次更改源代码都必须运行一个shell脚本。 有没有一种方法将保存操作绑定到脚本文件。因此,当我更改源文件时,不需要手动运行脚本。

就像git commit可以挂钩一个* .sh。 我想使用zend studio编辑服务器上的文件,当我保存文件。它可以触发想运行的脚本。

inotify-toolsforms使用inotify并在服务器上运行一个包含如下内容的脚本:

 #!/bin/bash while true do inotifywait -e modify /path/to/watched_file.txt && /bin/bash /path/to/your-script.sh done 

当文件被写入时,这将执行脚本,但可能是-e列表必须适合您的情况,请参阅man inotifywait

select:只需使用一个git钩子。

对于像这样的事情,我觉得这很有用。 它与cron类似 – 你有用户和系统表,以及触发这些表中列出的事件的动作。 这样,您不必为每个观察者都运行一个专门构build的脚本。

需要注意的是,虽然项目并没有失效,但也不是很活跃,所以不要指望太多的新function。 这也不是每一个普遍的,所以我不会感到惊讶,如果它有一些安全漏洞 – 我不会让每个用户incron表可用在一个高调,关键的多用户服务器。