1

Jenkins のビルド ステップから呼び出している bash スクリプトがあります。この bash スクリプト内には、次のような別のスクリプトをバックグラウンドで呼び出すための nohup コマンドがあります。

#!/bin/bash
nohup otherScript.sh &

ビルド ステップが完了した後、nohup.out が作成されたはずのパスに移動しますが、そこには何もありません。何が起こっているかについてのアイデアはありますか?

4

2 に答える 2

3

からの引用man nohup

標準入力が端末の場合、/dev/null からリダイレクトします。標準出力が端末の場合は、nohup.out可能な場合は出力を追加し、$HOME/nohup.outそうでない場合は出力を追加します。標準エラーが端末の場合は、標準出力にリダイレクトします。出力を FILE に保存するには、 を使用しますnohup COMMAND > FILE

Jenkins からコマンドを実行すると、おそらくSTDOUT端末ではないため、nohup.out作成されません。gareth_bowlesが既に提案したように、出力をパスが定義されたファイルにリダイレクトする必要があります。

nohup script.sh >/path/to/output.log 2>&1 &
于 2013-06-03T18:15:32.627 に答える