1

PowerShellコードスニペット:

$session = New-PSSession -ComputerName 'ALPHA' -Credential $cred
Invoke-Command -Session $session -ScriptBlock {
  cmd /c C:\Python27\python.exe test.py 
}

test.py python スクリプトは出力を StdError に書き込みます。そのため、次のエラー メッセージが表示されると思います (赤色)。

WARNING:root:warning
    + CategoryInfo          : NotSpecified: (WARNING:root:warning:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

質問:このエラー メッセージが表示されないようにするにはどうすればよいですか? 実際には、メッセージWARNING:root:warningが表示されるはずですが、表示されるNativeCommandErrorべきではありません。

スクリプト出力を表示する必要があるため、スクリプト出力を にリダイレクトしてもうまくいき$nullません。

cmd /c C:\Python27\python.exe test.py 2>&1役に立たない、エラーがまだ表示されるようなもの

私が現在想像できる唯一の解決策は、出力をファイルにリダイレクトし、これらのエラー行を削除してから、フィルタリングされたファイルの内容をコンソールに出力することです。しかし、この解決策はややクレイジーです。別の「正気の」解決策があるはずです。

ありがとう

4

1 に答える 1

0

私の現在の解決策:コードを変更して、代わりににPythonメッセージを書き込むようにします。ありがたいことに、私の場合、これはライブラリ コードを変更せずに行うことができます (ねえ、それは動的であり、したがって非常に拡張可能です)。StdOutStdErrPython

于 2011-08-21T17:31:19.063 に答える