0

このディレクトリのサーバー上に git リポジトリを作成します。私が望むのは、ファイルがディレクトリに移動するたびに、git push がリポジトリをプッシュしてコミットすることです。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

cron を使用せずに、inotify のみを使用したいのです。私は長い間、cron と incron、incrontab に取り組んできました。運がない。

誰にもアイデアはありますか?ありがとう!

4

1 に答える 1

0

制御端末が閉じられている場合、子プロセスはシグナルを受け取ります。シグナルがキャッチされない場合は、意図的にそれらを終了します。

ハングアップ信号

子プロセスをこれから保護したい場合は、nohup コマンドで保護を開始できます。

nohup コマンド

バックグラウンドでコマンドを開始するには、最後に & を適用します (すべてではないにしてもほとんどのシェルで)。

于 2016-07-22T20:24:37.043 に答える