私はjava jarファイルを呼び出してアプリケーションを実行するシェルスクリプトを持っています。これを回避する方法はないので、私が持っているものと仕事をしなければなりません。BASH:Initスクリプトとしてのシェルスクリプト
このシェルスクリプトを実行すると、アプリケーションのステータスが出力され、そこにのみ置かれます(ほとんどコンソールです)。だから何かがプログラムに起こると、それは画面を更新する。これは、通常の非デーモン/バックグラウンドプロセスと同様です。そこから抜け出る唯一の方法はctrl-cで、プロセスを完全に終了します。私はpath_to_shell_script/script.sh &
を実行してこの問題を回避できることを知っています。私のセッションでバックグラウンドになるでしょう(ログアウトしたい場合はnohupを使うことができます)。
私の問題は、このスクリプトをinitスクリプトに入れる方法がわかりません。ほとんどのinitスクリプトは書かれていますが、デーモン化しようとするとうまくいきません。私はほとんどそれを働かせました、しかし、私はinitscriptを実行するとき、実際には、スクリプト上の同じ "コンソール"に及んで、私がctrl-cを押すまでそこに座っています。ここで問題になっている行があります:
daemon ${basedir}/$prog && success || failure
問題は、私は私が問題に実行しているところだと思いませ背景だけdaemon ${basedir}/$prog
部分ができ、ということです。誰かがシェルスクリプト用のinitスクリプトを作成するのに成功していますか?また、このシェルスクリプトはデーモン化可能ではありません(バックグラウンド化できますが、基礎となるプログラムはデーモン化オプションをサポートしていません。