私は、パスワードの入力を求めるプロンプトが表示され、後で復号化プログラムにstdinを渡す必要がある鍵が派生しています。私はいつでもファイルにキーを格納したくないので、代わりに変数に渡すことを考えています。代替ファイル記述子からシェル変数への読み込み
パスワードプログラムはパスワードプロンプトを表示する必要があるため、プロンプトを失うことなくstdoutから変数に読み込むことができません。私はthisから、代替の記述子からの出力をキャプチャでき、thisから非常に精巧なリダイレクトとパイピングが可能であることを知っていますが、私はそれをすべてまとめないといけません。
パスワードプログラムは私のものなので、自分の選択した代替ディスクリプタ、たとえば3
に書き込むことができます。以下は、私がしたいことを示していますが、間違っていることが分かります。これをどうすれば解決できますか?
read key < <&3 $(password_program)
# other operations ...
echo $key | decryption_program -
'-uが3' –
ように動作するはず読むべき'読んキー<&3' –
@william:これはシェルのfdから読み込む 'read'を得る方法です3.しかし、' password_program'の出力をシェルのfd 3に表示させる方法はありますか? 'password_program'がそれ自身のfd 3に書き込む方法は明らかですが、それはあまり役に立ちません。 – rici