fifo

リモートコマンドを実行するためのインターフェイスとして名前付きパイプ(FIFO)を使用するのは良い考えですか?
fifo

リモートコマンドを実行するためのインターフェイスとして名前付きパイプ(FIFO)を使用するのは良い考えですか?

コンテキスト:テキストエディタを介してリモートコンピュータにコマンドを実行したいです。 「リモートコマンドの実行」とは、仮想マシン、SSHサーバー、コンテナ、TCP経由のシェル、シェルを持つすべてのリモートマシンなど、どこかでシェルコマンドを実行することを意味します。 私が言う「インターフェース」は、ユーザーに詳細を隠す目標です。ユーザーはどこかにコマンドを書き、その出力をどこかで読みます。 私は次のように構成するつもりです。 mkfifo /tmp/f mkfifo /tmp/g while true; do cat /tmp/f | ssh -...

Admin

fifoをPythonのstdinにリダイレクトする
fifo

fifoをPythonのstdinにリダイレクトする

$ mkfifo mypipe $ echo "hello redirection" > mypipe $ cat < mypipe hello redirection Pythonを使って上記のタスクを実行しようとすると問題があります。 # pyecho.py with open("/dev/stdin", "r") as f: print(f.read()) $ python3 pyecho.py < mypipe パイプに2回書き込まないと終了しません。 $ echo "hello redirection" >...

Admin

sed/head と名前付きパイプ/FIFO の奇妙な動作 (2 回の書き込みが必要)
fifo

sed/head と名前付きパイプ/FIFO の奇妙な動作 (2 回の書き込みが必要)

mkfifoシェルからfifoを作成し、rwモードで開きましたexec 3<>fifo。 別のシェルで実行しsed 1q <&3てfifoに1行を書き込むと、sedはfifoに別の行を書き込むまでその行を印刷しません。なぜこれが起こるのですか? (このようなことは起こらないでしょうhead -n1) ...

Admin

rsyslogd v3.xxは、名前付きパイプターゲットへの書き込み接続を予期せず閉じました。
fifo

rsyslogd v3.xxは、名前付きパイプターゲットへの書き込み接続を予期せず閉じました。

特定のログメッセージを名前付きパイプに転送するようにrsyslogを設定しました/tmp/logger.pipe。その後、名前付きパイプからデータを読み取る別のプロセスがあります。関連部品は以下で提供されます。/etc/rsyslog.conf # Remote Logging (silly conditional rule needed for specific logging scenario) $template RFC5424Format,"<%PRI%>1 %timegenerated:1:10:date-rfc3339%T%timeg...

Admin

rsyslogが名前付きパイプを埋めるとどうなりますか?
fifo

rsyslogが名前付きパイプを埋めるとどうなりますか?

rsyslogの出力を監視および処理するように設計されたCアプリケーションを開発しています。私の研究によると、これを達成する1つの方法は、名前付きパイプを作成し、その名前付きパイプを指す新しいsyslogターゲットを作成することです。私のCアプリケーションは、この名前付きパイプを開いて読みます。 しかし、私のCアプリケーションが名前付きパイプから十分に速く読み取れず、syslogがFIFOバッファをいっぱいにすると仮定します。 syslogは正確に何をしますか?内部バッファを作成して保持しますか?それとも新しいメッセージが削除され始めますか? 私のアプリケー...

Admin

名前付きパイプ(mkfifo):消費者が書き込み側に書き込まず、読み取り側(消費者)の接続が切断されたことをMacosがどのように検出しますか?
fifo

名前付きパイプ(mkfifo):消費者が書き込み側に書き込まず、読み取り側(消費者)の接続が切断されたことをMacosがどのように検出しますか?

メモ:これはおおよそ生産者代わりに、消費者の接続切断検出消費者生産者の接続が切断されたことが検出されました(EOFとも呼ばれます)。生産者は長い間データを書き込めないかもしれませんが、消費者の接続が失われたことをすぐに知りたいと思います。 一般的なイベントシーケンス: コンシューマ(Wireshark)は名前付きパイプを作成し(使用してmkfifo)、読み取りの終わりを開きます。 生産者(いわゆるWireshark外部キャプチャプログラム、extcapとも呼ばれます)が起動し、名前付きパイプの名前/パスを渡します。 プロデューサは書き込み側をO_WRONL...

Admin

ncとfifoの奇妙で一貫性のない出力
fifo

ncとfifoの奇妙で一貫性のない出力

私は次のような正確なコードを持っています: #!/bin/bash gtimeout(){ if type -f gtimeout &> /dev/null; then command gtimeout "$@" else timeout "$@" fi } export -f gtimeout; on_first_match(){ local pattern="$1" # The pattern to search for while IFS= read -r line; do ...

Admin

「Hキー」や「上矢印キー」などの制御文字をシミュレートします。
fifo

「Hキー」や「上矢印キー」などの制御文字をシミュレートします。

Debianオペレーティングシステムがインストールされているデバイス1があります。別のデバイス(デバイス2など)を介してシリアルコンソールにアクセスします。デバイス1から他のOSをアンインストールしてインストールするスクリプトは、デバイス2にあります。デバイス1は、インストール/削除中に「v」、「upキー」などのキーを押す必要があります。 fifo(ファイル入力ファイル出力)ファイルを介してプログラムに入力を提供することで、ジョブ全体を自動化しました。多くの研究の最後に、次のコマンドを使用して上矢印キーをシミュレートする方法を見つけました。 printf "...

Admin

連続ポーリング名前付き(FIFO)パイプ
fifo

連続ポーリング名前付き(FIFO)パイプ

実行中のシェルスクリプトのアクティビティを監視するために名前付きパイプを使用しようとしています。シェルスクリプトは、処理を「開始」したことをパイプに記録します。処理が完了すると、パイプに「Completed」と記録されます。 2 番目のスクリプトは監視を実行し、2 つのメッセージを読み取ります。 2番目のスクリプトが5分以内に「完了」メッセージを受け取らない場合、警告が送信されます。 そこで、2つのプロセス間の通信に名前付きパイプを使用する方法に関するLinux Journalのコードを見つけました。パイプは一度に2つのメッセージを取得し、ループ中にカウンタ...

Admin

bashのfifoと端末からの同時入力
fifo

bashのfifoと端末からの同時入力

スクリプト内でffmpegを実行していますが、実行中の端末で「q」を押すか(デフォルトの動作)、fifoファイルに「q」と入力してffmpegを終了できます。どのプログラムを選択しても構いません。走る。 ffmpeg </fifo_filefifoファイルで終了できますが、キーボードの入力は許可されません。概念的には、入力がfifoを通過してからffmpegの標準入力に移動するようにキーボードからfifoに入力をリダイレクトすることは非常に単純な問題だと思います。しかし、私は検索しましたが、何も見つかりませんでした。 ffmpegだけでなく任意のコマン...

Admin

UDP経由でネットワーク経由(alsa)オーディオを送信する
fifo

UDP経由でネットワーク経由(alsa)オーディオを送信する

私が理解したところによると、これは「mic_rec」という名前のパイプにwav形式で300秒間モノを録音します。 rec arecord -D hw:4,0 -d 300 -f cd -t wav -c 1 mic_rec これにより、名前付きパイプ "mic_rec"で見つかったすべてのエントリがtcpを介してポート8111に送信されます。 cat mic_rec |netcat -l -p 8111 UDPプロトコル cat mic_rec |netcat -u -l -p 8111 TCPを使用した受信(有効): netcat 192.168.2...

Admin

sudo サブプロセスが元のユーザーとして実行された Zenity を更新できるようにする
fifo

sudo サブプロセスが元のユーザーとして実行された Zenity を更新できるようにする

ユーザー「従業員」が実行するスクリプトzenity --progress。 次に呼び出しますsudo -u adminBod adminScript(そしてSTDOUTとSTDERRはロガーに収集されます)。 adminScriptアップデートを提供するために、実行中のプログラムがadminBodzenityのSTDINに書き込むことができることを願っています。 1回試してください 私はチャンネル3をzenityのSTDINに接続し、sudoプロセスで書くことができると思いました。 #!/bin/bash # Main script, run by 's...

Admin

ログステートメントを作成する前にフィルタリングしてください。
fifo

ログステートメントを作成する前にフィルタリングしてください。

興味のある情報を取得するために詳細モードで実行する必要があるアプリケーションがあります。これにより、私の要件に対する関心が1%未満の巨大なログファイルが生成されます。私は興味のある文だけを記録する方法が欲しいです。 このコマンドは、ログを記録するログファイル名を受け入れます。システムサービスとして実行されます。 ログ書き込みステートメントがディスクに書き込まれる前に、どのように傍受して選択できますか? fifoにファイル名を付けてPythonスクリプトを介して読んでみましたが、あまりにも多くの問題が発生しました。 ...

Admin