मेरे पास एक कार्यक्रम है Pजो "हैलो" और आउटपुट "क्यों?" एक सुविधा प्रदान करने से पहले। इस सुविधा का उपयोग अन्य कार्यक्रमों द्वारा किया जाता है जो इस बात से अवगत नहीं हैं कि "हैलो" के साथ बातचीत शुरू करना सामान्य शिष्टाचार है। मैं इस प्रकार 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समाधान स्वीकार्य है?