P「Hello」を受け取り、「Why?」を出力することを期待するプログラムがあります。機能を提供する前に。この機能は、「こんにちは」との会話を開始することが礼儀であることを認識していない他のプログラムによって使用されます。したがって、次のように機能するラッパーを記述したいと思いPます(zsh構文)。
coproc P
print -p Hello # Send Hello to P
read -pr line # Read what P has to say
[[ "$line" = "Why?" ]] && Replace current process with the coprocess.
echo Could not get P's attention.
使用するcatかddにReplace...一部(のようなものはcat <&p &; exec cat >&p)不要なバッファリングになります。私のオプションは何ですか?
bash適用できない解決策には失望しますが、zsh確かにそれを受け入れます☺
sshとそのオプションProxyCommandでした。
cat通常はバッファリングしません。システムで問題が発生する場合は、を試してくださいcat -u。
zsh解決策をかでbash受け入れ可能な解決策?