バックグラウンドでCプログラムを実行しようとしています。また、プログラムの標準出力を保存したいと思います。
ただし、nohupは、次のことを試みた場合にのみ、stderr出力をlogfile.txtにリダイレクトします。
nohup ./GetTempValues 11 4 > logfile.txt 2>&1 &
ここで、11と4は私のプログラムに渡す必要があるパラメータ、最後のパラメータはバックグラウンドで&
プログラムを実行するために使用されるパラメータです(GetTempValuesは私のプログラムです)。
ベストアンサー1
GetTempValues
もともと標準出力が生成されると確信していますか?あなたの構文が「私に適している」からです。
$ nohup perl test.pl >logfile.txt 2>&1 &
[1] 20964
$ cat logfile.txt
this goes to stderr
this goes to stdout
[1]+ Done nohup perl test.pl > logfile.txt 2>&1
test.pl
どこ
print STDOUT "this goes to stdout\n";
print STDERR "this goes to stderr\n";
PS:あなたの例では、2>&1
STDERRをSTDOUTにリダイレクトする必要はありません。nohup
「標準エラーが端末の場合は、標準出力と同じ場所に渡されます。」(nohup
マニュアルページ)。