私はpopen()
を使用してコールの標準エラーを捕まえようとしていますが、もちろんそのようには見えません。何か案は?c popenはstderrをキャッチしません
私のコードは、多かれ少なかれ、次のようになります。
私はpopen()
を使用してコールの標準エラーを捕まえようとしていますが、もちろんそのようには見えません。何か案は?c popenはstderrをキャッチしません
私のコードは、多かれ少なかれ、次のようになります。
popen
はあなたのファイルハンドルを与える...
popen("nedit", "r");
しかし、私は私の画面上で非UTF8に関するすべてのこのゴミを取得していますプロセス 'の標準出力ではなく標準出力です。あなたがそれにリダイレクトを行うことができますので、最初の引数は、シェルコマンドとして解釈されます
以外FILE *p = popen("prog 2>&1", "r");
か、あなたがすべてで標準出力をしたくない場合は、
FILE *p = popen("prog 2>&1 >/dev/null", "r");
(その他のファイル/dev/null
としても可)
あなたはエラーメッセージのすべてを破棄したい場合は、あなたが使用することができます。
popen("nedit 2>/dev/null", "r");
出力をまったく必要としない場合、 'popen(...、" w "); –