問題タブ [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.
process - solaris ですでに実行中のプロセスから stderr と stdout をキャプチャする
ユーザー「remedy」によって開始された、現在実行中のプロセス (arserverd) があります。このユーザーとしてログインできます。プロセスを再起動せずに stderr と stdout をキャプチャしたいと思います。これは可能ですか?
python - Pythonを使用して、別のプログラムの標準出力を強制的にバッファリング解除します
Pythonスクリプトは、Linux上の外部アプリケーションを制御し、パイプを介して外部アプリケーションstdinに入力を渡し、外部アプリケーションstdoutからパイプを介して出力を読み取ります。
問題は、パイプへの書き込みが行ではなくブロックによってバッファリングされるため、制御スクリプトが外部アプリケーションのprintfなどによって出力されたデータを受信する前に遅延が発生することです。
外部アプリケーションを変更して、明示的なfflush(0)呼び出しを追加することはできません。
winapi - stdout/stderr を個別にキャプチャして、元の順序を維持できますか?
ネイティブの win32 API を使用して Windows アプリケーションを作成しました。私のアプリは他のプロセスを起動し、出力をキャプチャして stderr 出力を赤で強調表示します。
これを実現するために、stdout と stderr 用に別のパイプを作成し、CreateProcess を呼び出すときに STARTUPINFO 構造体でそれらを使用します。次に、パイプから読み取り、出力をウィンドウに記録する stdout/stderr ハンドルごとに個別のスレッドを起動します。
ほとんどの場合、これで問題なく動作します。私が抱えている問題は、子プロセスが stderr と stdout にすばやく連続してログを記録すると、アプリが間違った順序で出力を表示することがあるということです。これは、2 つのスレッドを使用して各ハンドルから読み取ることが原因であると想定しています。
2 つを区別しながら、stdout と stderr を元の順序でキャプチャすることは可能ですか?
c++ - stdoutを/dev/ nullにリダイレクトした場合にのみセグメンテーション違反が発生しますか?
stderrへの有用な出力とstdoutへのほとんどのノイズ(デバッグしている場合を除く)を生成するC ++ユニットテストがあるので、stdoutを/ dev/nullにリダイレクトしたいと思います。
不思議なことに、これを行うとセグメンテーション違反が発生するようです。
コードが">/dev / null"でセグメンテーション違反を起こし、それ以外の場合は正常に実行される理由はありますか?
printf
ベアリングがある場合、出力は完全にsによって生成されます。
問題のあるコードは、公開のために提出されている研究であるため、投稿するのは困難です。この説明に基づいて、「明らかな」考えられる原因があることを願っています。
事後分析
セグメンテーション違反は次のようなコードによって引き起こされていました:
C / C ++でが負のx % y
場合、それが負のままであることを何度も忘れました。x
さて、なぜ私がにリダイレクトしたときにのみそれが起こったの/dev/null
ですか?私の推測では、アクセスしていた無効なメモリアドレスはstdoutの出力バッファにあり、このバッファは必要のないときに割り当てられません。
良い答えをありがとう!
c++ - CreateProcessWithLoginW - STDOUT のリダイレクト
私が望むのは、プロセスを開始し、入力と出力をすべて同じコンソールに置くことです。
このコードを使用すると、同じウィンドウではなく、まったく新しいウィンドウが作成されます。「CREATE_NEW_CONSOLE」フラグを設定解除する方法はありますか? 0 に設定しても新しいコンソールが作成されるためです。
ruby - シェルスクリプトでラップされた ruby popen を使用する
IO.popen("command").readlines を使用してそのコマンドの STDOUT を取得する宿題の短いファイルを完成させました。ただし、Ruby ファイルをラップするシェル スクリプトを作成する必要があります。問題はありませんが、シェル スクリプトに入れると readlines がハングします。
これは動作します
これは readlines でハングアップします。ruby script.rb
script.sh に含まれるすべてです。
bash - bash に結果を待ち、結果が得られたときに SIGKILL を送信するように依頼する方法は?
zbarcam を使いたいのですが、バーコードを読み取った後、停止しません。
最初の \n を stdout に出力した後、zbarcam を強制終了するように bash に指示する方法を知っていますか?
c# - C# Windows サービスで stdout+stderr をリダイレクトする
ServiceBase
ヘルパーを使用して C# で Windows サービスを作成しました。その実行中に、外部のネイティブ DLL 内のいくつかのプロシージャが呼び出されます。厄介なことに、これらのプロシージャは、この DLL のソースが提供されていないため、制御されていない方法で stdout および/または stderr に書き込みます。
これらの出力を C# サービスからログ ファイルにリダイレクトすることはできますか?
macos - 別のアプリケーションからMacOSXのコンソールログを取得する
アプリケーションUtilities/Console.appを使用すると、アプリケーションのコンソール出力を確認できます。
別のアプリケーションからこのログにアクセスする方法はありますか?
具体的には、アプリケーション用のクラッシュハンドラーを作成していて、コンソール出力をクラッシュ情報に添付する必要があります。
c++ - stdin、stdoutをソケットに転送して任意のプロセスを実行する最も簡単な方法は何ですか?
私は2つの状況に興味があります:
- C ++からそれを行う方法は?
- システムのシェルからそれを行う方法は?
Linux、Windows、OSXの回答は大歓迎です。