2009-04-14 5 views

答えて

12

stdoutとstderrの両方を配管していますか?そうでない場合は、配管していない方にお書き添えください。

print STDERR "This goes to standard error"; 
print STDOUT "This goes to standard output"; 

(あなたがハンドルを提供していない場合は、STDOUTはもちろんのデフォルトです - あなたは異なるデフォルトのハンドルを使用するようにPerlを求めてきましたしない限り、...)

+0

STDOUTは、selectを使用してPerlに指示していない場合にのみデフォルトであり、別のハンドルをデフォルトにする必要があります。これがデフォルトのデフォルトです。 –

+0

ありがとうChas - 編集された回答があります。 –

+1

あなたはセミコロンを忘れました。これはPythonではありません。 – MkV

3

あなたは言っていない限り、コマンドラインに2>&1のようなものがあり、STDERRが画面に表示されるはずです。あなたはJon Skeet suggestsのようにSTDERRに書くこともできますし、warn関数を使うこともできます。

関連する問題