問題タブ [tee]
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.
bash - 出力を 2 つの異なるコマンドにパイプする
重複の可能性:
osx/linux: 2 つのプロセスにパイプしますか?
1 つのコマンドからの出力を他の 2 つのコマンドの入力にパイプして、それらを同時に実行する方法はありますか?
このようなもの:
私がこれをしたい理由は、USB SDR デバイスから FM ラジオ信号を受信し、オーディオを生の PCM データ (.wav ファイルのようにヘッダーなし) として出力するプログラムがあるためです。 music が POCSAG ページャー データであるため、それをデコーダー プログラムにパイプして、ページャー テキストを復元する必要があります。ただし、信号を聞きたいので、データが入ってくるかどうかもわかります。(そうしないと、デコーダーが壊れているのか、ブロードキャストされているデータがないだけなのかわかりません。) したがって、データをページャー デコーダーにパイプするだけでなく、同じデータをplay
コマンドにパイプする必要もあります。
play
現在、私はそれをデコーダーにパイプして無音でデータを読み取るか、デコードされたテキストを表示せずにパイプして聞く方法しか知りません。
テキストを読んで音声を聞くことができるように、同じデータを両方のコマンドにパイプするにはどうすればよいですか?
複製したデータをファイルに書き込むだけなので使えませんtee
が、データをリアルタイムで処理する必要があります。
ffmpeg - GStreamer Tee (マルチマルチプレクサー)
(ウェブカメラからの) ビデオ ストリームを MKV および FLV ファイルに保存しようとしています。これは、h264 エンコーディングの後にビデオとオーディオのパイプラインを分割し、各パスを別のマルチプレクサで多重化する必要があることを意味します。
これは、私がそれが機能するはずだと想像する方法です:
この仮定は正しいですか?すべての待ち行列は適切な場所にありますか? このような GStreamer コマンドはどのようになりますか? 特に「Tee」という概念に悩んでいます。コマンドでそれらを開始する方法/場所、およびさまざまなティーパスを操作する方法。GStreamer のドキュメントで「Tee」を調べましたが、まだ適用に問題があります。
前もって感謝します!
編集:わかりました、mreithub のおかげで、ビデオで動作するようになりました。今のところ、コマンドは次のようになります。
オーディオを実行するための私の試みは次のとおりです。
これは機能しません (コマンドは実行されますが、すぐに停止します - エラー メッセージは表示されません)。しかし、オーディオエンコーディングを配置する位置を決定するのにも問題があります。私が試みた解決策では、各 Tee-Pipeline でオーディオをエンコードします (右?)。しかし、オーディオを一度だけエンコードしてから、それに応じて両方のパイプラインパスで多重化したいと思います。
別の試み: オーディオ エンコーディングの後、Tee を使用してパイプラインを分割し、それを mkvmuxer と flvmuxer に割り当てます。
しかし、これを使用すると、次のエラーメッセージが表示されます。
ありがとう!
bash - ティーは出力をファイルに入れませんでした
PHPファイルを使用してテストを実行し、結果を取得しようとしていました。PHP での内容は次のとおりです。
bash ファイルの内容は、セレン テストを開始することです。しかし、結果は、ページでテストが行われた後にテスト結果を取得したことです。ただし、必要なファイルがあるはずの場所に見つかりません。また、私は現在システムを訴えています。ページャーにリアルタイムで出力する方法はありますか?
bash - Bash - stdout をログにリダイレクトし、stderr のみを使用してログに記録します
私は次のことをしたいと思います。
- stdout のコピーをログファイルにリダイレクトし、stdout を画面に表示します。
- stderr を同じログファイルにリダイレクトし、画面に表示しません。
画面への stdout のないコード:
ログ:
最初の問題はバッファリングであり、バッファリングされていない場合は sed '-u' で無効にしようとしました。
画面への stdout を使用したコード:
その結果、画面がハングし (Ctrl-C を使用する必要がありました)、ログがまだバッファリングされます。提案?
shell - DOS を使用、Brian Friesen による Tee32 3.2、リターン コードの取得
Apache ant への呼び出しを TEE するためにパイプを使用しています
ERRORLEVEL 4264624
これにより、テストタスクを使用する場合でも使用しない場合でも、一貫性が保た<fail/>
れます。
言い換えれば、私は ant.bat のステータスを取得していませんが、別のものです。
これはBASHではなくDOSなので、アクセスできません
私の目標ではない場合、これに対する直接的な解決策はありますか?
unix - サブシェルへのコマンドパイプ
違いは何ですか
と
内部で何が起こっているのかという点で?ティーがストリームをファイルとパイプにフォークしているので、2番目のものを理解できます。しかし、私は最初のものと混同しています。
bash - どのように stderr に接続しますか?
とstdout
の両方に出力されるように分割したい。これは仕事のように聞こえますが、構文が私を回避しています-stdout
stderr
tee
もちろん、stderr
ここで実際にどのように言及されるべきでしょうか?
shell - 標準入力をコピーし、出力行の順序を予約しながら2つのタスクを実行しますか?
stdinの同じコピーで2つのタスクを実行する1行のコマンドを記述したいと思います。次に例を示します。
結果は最終的にファイルに保存され、私のプログラムで処理されます。そして、私が期待するのは次のとおりです。
ただし、場合によっては、出力の順序が逆にwc
なることがあります。
多分私はtee
このように使うべきではありませんか?何か提案はありますか?
linux - 存在しないディレクトリ内のファイルに出力をリダイレクトするには、tee コマンドを使用します。
tee コマンドを使用して出力をファイルにリダイレクトしようとしていますが、まだ作成されていないディレクトリにファイルを作成したいと考えています。
new_dir が存在しない場合、tee コマンドは次のように言って失敗します
ティー: new_dir/new_file: そのようなファイルまたはディレクトリはありません
tee コマンドを実行する前に new_dir を作成すると問題なく動作しますが、何らかの理由で手動で new_dir を作成したくない場合は、tee コマンドで new_dir を作成できますか?