2011-12-08 171 views
1

私のサーバーでnohup sleep 1 > nohup.out &はヘルプメッセージを表示しません。良い。
ノートパソコンで同じコマンドを実行すると、nohup: ignoring input and redirecting stderr to stdoutと表示されます。コマンドはまだ実行され、正常に完了しますが、私は2台のマシン間でこのメッセージの報告に違いがあるのか​​どうかわかりません。しかし、幸いなことに、私は単にファイルに標準エラー出力と標準出力をリダイレクトすることで私のラップトップ上でこの問題を解決することができますので、nohup sleep 1 &> nohup.out &nohupとsed、stderrとstdoutをリダイレクト

....私がやろうとしていることは私のラップトップ上で、より便利なコマンドを実装している。

以下の私のサーバー上で正常に動作し、何のメッセージが報告されません:
nohup ls -1 *.txt | sed -e "s%\(.*\)%/home/user/scripts/script.pl -find \1 %" | sh > nohup.out &

コード「nohups」彼らは連続script.plを介して実行し、シェルで実行されているのsedへのファイルのパイプで連結されたリストのこの行。 script.plは、いくつかのファイルにデータを出力し、いくつかの情報をstdoutに出力します。私はこの情報を、nohup.outというファイルに書き込むことで取得します。

私のラップトップでこのone-linerを実行すると、nohup: ignoring input and redirecting stderr to stdoutが得られます。これは期待されています(私には分かりませんが)。しかし、私は標準エラー出力と標準出力にリダイレクトする行変更する場合:
nohup ls -1 *.txt | sed -e "s%\(.*\)%/home/user/scripts/script.pl -find \1 %" | sh &> nohup.out &

を、私はまだそれが表示されたメッセージを受信せずに私のラップトップ上で実行されるように、私はワンライナーを修正するにはどうすればよいのメッセージnohup: ignoring input and redirecting stderr to stdout

を取得しますか?

+0

サーバーはどのシステム(OSとバージョン)を実行していますか?ラップトップはどうですか? –

+0

@JonathanLeffler私のラップトップ:Ubuntu 11.04。私のサーバー:CentOSリリース5.2 – Steve

答えて

10

Iこのあなたのために働くかもしれない:

nohup ls -1 *.txt 2>/dev/null | ..... 

理由はnohupているので、それがstderrどこへ2>/dev/null溝を向ける、stderrに警告メッセージを発行します。

+0

Genius!あなたのソリューションは完璧に動作します。私はstderrを/ dev/nullに書き込もうとしましたが、最初のパイプの前に追加するとは考えていませんでした。私は1本のライナーの最後のパイプの後で使ってみました。ありがとう! – Steve

関連する問題