特定のプログラムにファイルをリダイレクトした後、「stdin」に戻る


5

bashのリダイレクト機能を使用して特定の効果を達成する必要があります。

ファイルをプログラムの標準入力にリダイレクトできることを知っています。

[user@host]$ application < file.txt

問題は、ファイルの内容が渡された後、このプログラムの入力の制御を取り戻すことができるかどうかを知りたいことです。つまり、上記と同様のコマンドを実行したいのですが、アプリケーションを終了する代わりに、標準入力(キーボード)からのコマンドをさらに待ちたいと思います。

この質問を書いているときに、おそらく別のアプリケーション(またはスクリプト)を書き、最初に標準出力にいくつかのデータを書き込み、次にエコーのように振る舞う可能性があることに気付きました。

[user@host]$ stdin_proxy.sh | application

それはうまくいくでしょうか、そうするためのより良い方法はありますか?この問題をカバーするGoogleableのチュートリアルがたくさんありますが、それらはすべて1つのアドバイスに過ぎません-「ファイルの内容が読み取られた後、stdinを再度開く」。Hovewer、私はのソースコードにアクセスできませんapplication

回答:


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.