解決すべき大きな問題があります。基本的に私はそれの経験がほとんどなく、最近Webサーバーで実行するためにLinux
かなりの数のコマンドを使用する必要があるプロジェクトに取り組んでいます。Linux
php scripts
デフォルトでは2つのスクリプトがあります
- get_tweets.php
- 構文解析_tweets.php
今後3〜4週間Webサーバーで継続的に実行するには、これらの機能が必要です。次のコマンドを使って実行したところ、一日ほど続くようでしたが、朝に確認してみると動作が止まったようです!
nohup php get_tweets.php > /dev/null &
それから
nohup php parse_tweets.php > /dev/null &
&
を使用すると、スクリプトを実行し続けることができ、background
ログアウト時にスクリプトが実行されることがわかりますが、ssh
前述したように、スクリプトは一日中うまく実行されているようですが、朝チェックインすると停止します。
私が持っている問題は、中断することなく実行し続ける方法です。script
実行中であることを確認し、そうでない場合は、再起動するか、5時間ごとまたはそれほど作成する簡単な方法がありますか?
これは大きな問題であり、解決策がわからないので、助けてくれて本当にありがとう。
答え1
周りに無限ループを置きます。
nohup sh -c 'while true; do php get_tweets.php; done' >/dev/null &
nohup sh -c 'while true; do php parse_tweets.php; done' >/dev/null &
スクリプトが停止した理由を確認するために、すべての出力を調べることができるように、出力を実際のファイルにリダイレクトすると便利です(上書きするのではなく>>を使用して追加)。また、nohup.outで手がかりを確認してください。