2016-07-25 17 views
0

プログラム出力のstdout/stderrのログをファイルに追加しました。プログラムが起動されたときのstdoutとstderrのログ

しかし、私はscreenからプログラムを起動したときに、それが唯一のscreenからではなくscreen内のバックグラウンドで実行中のプログラムからのメッセージをログに記録しますので、ログファイルは、空です。

この方法や他の解決策を解決する方法はありませんので、screenと同様のstdout/stderrログを使用して、取り外し可能なプログラムを実行できますか?

現在のスタートアップライン:

画面-A -m -d -Sテスト./testserver -config =のconfig.cfg -filepatching -autoinit 1 >>」./ログ_ $(日付+%sの)。 txt "2 >>" ./ log _ $(date +%s).txt "

+0

たぶん、あなたは今それを行う方法をいくつかの情報やコードを追加することができます。それ以外の場合は、何が間違っているかを推測することはほとんど不可能です。 – nidomiro

+0

スタートアップラインを追加 – Daniel

答えて

1

問題は、コマンドをカプセル化する必要があるということです。今すぐ1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"が画面自体に適用され、プログラムが実行されます。

は、代わりにこれを試してみてください:

screen -A -m -d -S test './testserver -config=config.cfg -filepatching -autoinit 1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"' 

それともこれを:

screen -A -m -d -S test /bin/sh -c './testserver -config=config.cfg -filepatching -autoinit 1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"' 
+1

ありがとうございます:) – Daniel

関連する問題