/ root/folderのtest.sh
#!/bin/bash
echo "Hello" #Sample Code
今、同じフォルダー(/ root/folder)にあります。 Nohup_test.shを作成しました
#!/bin/bash
while true
do
sh /root/folder/test.sh
sleep 1
done
このNohup sh Nohup_test.sh &
のように上記のファイルを実行した場合。バックグラウンドで実行され、Nohup.out
を作成します。test.sh
の出力を使用して、tail -f Nohup.out
ここで、上記のスクリプトNohup_test.shでstart startupを実行したい(OSの起動時に自動的に実行)。
同じディレクトリ(/ root/folder /)に別のファイルstart.sh
を作成しました
#!/bin/bash
Nohup sh /root/folder/Nohup_test.sh &
1つの手順 HERE に従いました。
vi /etc/rc.local
以下のようなエントリを追加します
# This script is executed at the end of each multiuser runlevel
/root/folder/start.sh || exit 1 # Added by me
exit 0
スクリプトは開始されていると思います(ps aux | grep "Nohup"
でチェック)。しかし、Nohup.out
ファイルを取得できませんでした。だから、どのようにしてそのファイルを取得することができますかNohup.out
または手順に従う必要がありますか?ありがとう!
cd /root/folder
の上部にstart.sh
を追加します。スタートアップジョブで現在のディレクトリを信頼しないでください。
ところで、これは非常に複雑です。端末によって開始されないジョブにはNohupは必要ありません。 /etc/rc.local
で使用できます
/root/folder/Nohup_test.sh > /root/folder/my_output_file.log 2>&1 &
そして行われます。