私はwebminを使用して専用サーバー(Centos 7 64ビット)を管理し、そこからcronジョブを生成するために、以下を含むルートとして.shスクリプトを実行します。
#!/bin/bash
screen -dmS aud
screen -S aud -X stuff "node /home/AuditTrail-Web/app.js
"`echo -ne '\015'`
cronジョブは、起動時と次の方法でこの画面に参加するときにこのスクリプトを実行します。
screen -r aud
私は次のようなものを得ます(おそらく命名ヒントですか?):
sh-4.2#
これは私を許可しません時々次のコマンドを実行します。フューザー他の人もいますノード/ホーム/AuditTrail-Web/app.js
ただし、画面を手動で作成すると、次のような結果が表示されます。
[root@Martin ~]#
これにより、すべてを実行できます。
質問がありますか?sh-4.2#なぜこのような形で存在するのでしょうか?
ありがとう
答え1
特に、ノードエントリの場合、.bashrcまたは.bash_profileに依存するエントリを定義します。
Cronは.bashrcまたは.bash_profileをインポートまたは尊重しないため、画面の起動時に設定されません。
少なくともそれは私の最初の推測です。