0

我在服务器上为这个目录创建了一个 git repo。我想要的是,只要有文件移动到目录中, git push 就会推送 repo 并提交。我试过 incrontab 来执行一个脚本。但似乎我的服务器不喜欢 incrontab,每次都崩溃。

我可以在我的终端上运行这个 inotifywait。但是一旦我关闭终端,它就会停止观看。那么,有没有一种方法可以让我在 Linux 服务器上持续运行 inotifywait?

这是我的 Inotifywait 代码

while inotifywait -re modify,attrib,move,close_write,create,delete,delete_self /path/to/script.sh
    do
     cd /path/to/dir
     git pull
     git add .
     git commit -m 'updated'
     git push
     echo "done!"
    done

我真的想只使用 inotify,没有 cron 的东西。我在 cron 和 incron、incrontab 上工作了很长时间。没运气。

有人有想法么?谢谢!

4

1 回答 1

0

如果控制终端关闭,子进程会收到信号,如果没有被捕获,则按设计终止它们。

挂机信号

如果您希望子进程不受此影响,可以通过 nohup 命令启动它进行保护。

nohup 命令

要在后台启动命令,请在最后应用(对于大多数,如果不是所有的 shell) & 。

于 2016-07-22T20:24:37.043 回答