問題タブ [stdout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2624 参照

process - solaris ですでに実行中のプロセスから stderr と stdout をキャプチャする

ユーザー「remedy」によって開始された、現在実行中のプロセス (arserverd) があります。このユーザーとしてログインできます。プロセスを再起動せずに stderr と stdout をキャプチャしたいと思います。これは可能ですか?

0 投票する
7 に答える
5303 参照

python - Pythonを使用して、別のプログラムの標準出力を強制的にバッファリング解除します

Pythonスクリプトは、Linux上の外部アプリケーションを制御し、パイプを介して外部アプリケーションstdinに入力を渡し、外部アプリケーションstdoutからパイプを介して出力を読み取ります。

問題は、パイプへの書き込みが行ではなくブロックによってバッファリングされるため、制御スクリプトが外部アプリケーションのprintfなどによって出力されたデータを受信する前に遅延が発生することです。

外部アプリケーションを変更して、明示的なfflush(0)呼び出しを追加することはできません。

これを実現するために、Python標準ライブラリのptyモジュールをサブプロセスモジュールとどのように使用できますか?

0 投票する
6 に答える
1950 参照

winapi - stdout/stderr を個別にキャプチャして、元の順序を維持できますか?

ネイティブの win32 API を使用して Windows アプリケーションを作成しました。私のアプリは他のプロセスを起動し、出力をキャプチャして stderr 出力を赤で強調表示します。

これを実現するために、stdout と stderr 用に別のパイプを作成し、CreateProcess を呼び出すときに STARTUPINFO 構造体でそれらを使用します。次に、パイプから読み取り、出力をウィンドウに記録する stdout/stderr ハンドルごとに個別のスレッドを起動します。

ほとんどの場合、これで問題なく動作します。私が抱えている問題は、子プロセスが stderr と stdout にすばやく連続してログを記録すると、アプリが間違った順序で出力を表示することがあるということです。これは、2 つのスレッドを使用して各ハンドルから読み取ることが原因であると想定しています。

2 つを区別しながら、stdout と stderr を元の順序でキャプチャすることは可能ですか?

0 投票する
3 に答える
3450 参照

c++ - stdoutを/dev/ nullにリダイレクトした場合にのみセグメンテーション違反が発生しますか?

stderrへの有用な出力とstdoutへのほとんどのノイズ(デバッグしている場合を除く)を生成するC ++ユニットテストがあるので、stdoutを/ dev/nullにリダイレクトしたいと思います。

不思議なことに、これを行うとセグメンテーション違反が発生するようです。

コードが">/dev / null"でセグメンテーション違反を起こし、それ以外の場合は正常に実行される理由はありますか?

printfベアリングがある場合、出力は完全にsによって生成されます。

問題のあるコードは、公開のために提出されている研究であるため、投稿するのは困難です。この説明に基づいて、「明らかな」考えられる原因があることを願っています。

事後分析

セグメンテーション違反は次のようなコードによって引き起こされていました:

C / C ++でが負のx % y場合、それが負のままであることを何度も忘れました。x

さて、なぜ私がにリダイレクトしたときにのみそれが起こったの/dev/nullですか?私の推測では、アクセスしていた無効なメモリアドレスはstdoutの出力バッファにあり、このバッファは必要のないときに割り当てられません。

良い答えをありがとう!

0 投票する
1 に答える
230 参照

c++ - CreateProcessWithLoginW - STDOUT のリダイレクト

私が望むのは、プロセスを開始し、入力と出力をすべて同じコンソールに置くことです。

このコードを使用すると、同じウィンドウではなく、まったく新しいウィンドウが作成されます。「CREATE_NEW_CONSOLE」フラグを設定解除する方法はありますか? 0 に設定しても新しいコンソールが作成されるためです。

0 投票する
1 に答える
1028 参照

ruby - シェルスクリプトでラップされた ruby​​ popen を使用する

IO.popen("command").readlines を使用してそのコマンドの STDOUT を取得する宿題の短いファイルを完成させました。ただし、Ruby ファイルをラップするシェル スクリプトを作成する必要があります。問題はありませんが、シェル スクリプトに入れると readlines がハングします。

これは動作します

これは readlines でハングアップします。ruby script.rbscript.sh に含まれるすべてです。

0 投票する
3 に答える
835 参照

bash - bash に結果を待ち、結果が得られたときに SIGKILL を送信するように依頼する方法は?

zbarcam を使いたいのですが、バーコードを読み取った後、停止しません。

最初の \n を stdout に出力した後、zbarcam を強制終了するように bash に指示する方法を知っていますか?

0 投票する
2 に答える
13467 参照

c# - C# Windows サービスで stdout+stderr をリダイレクトする

ServiceBaseヘルパーを使用して C# で Windows サービスを作成しました。その実行中に、外部のネイティブ DLL 内のいくつかのプロシージャが呼び出されます。厄介なことに、これらのプロシージャは、この DLL のソースが提供されていないため、制御されていない方法で stdout および/または stderr に書き込みます。

これらの出力を C# サービスからログ ファイルにリダイレクトすることはできますか?

0 投票する
2 に答える
370 参照

macos - 別のアプリケーションからMacOSXのコンソールログを取得する

アプリケーションUtilities/Console.appを使用すると、アプリケーションのコンソール出力を確認できます。

別のアプリケーションからこのログにアクセスする方法はありますか?

具体的には、アプリケーション用のクラッシュハンドラーを作成していて、コンソール出力をクラッシュ情報に添付する必要があります。

0 投票する
3 に答える
583 参照

c++ - stdin、stdoutをソケットに転送して任意のプロセスを実行する最も簡単な方法は何ですか?

私は2つの状況に興味があります:

  • C ++からそれを行う方法は?
  • システムのシェルからそれを行う方法は?

Linux、Windows、OSXの回答は大歓迎です。