Tôi có một chương trình Pmong đợi nhận được "Xin chào" và đầu ra "Tại sao?" trước khi cung cấp một tính năng. Tính năng này được sử dụng bởi các chương trình khác không biết rằng đó là phép lịch sự phổ biến để bắt đầu cuộc trò chuyện với "Xin chào". Do đó, tôi muốn viết một trình bao bọc cho Phoạt động như thế này (cú phá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.
Sử dụng cathoặc ddtrong Replace...phần (giống như cat <&p &; exec cat >&p) kết quả trong đệm không cần thiết. Những lựa chọn của tôi là gì?
bashgiải pháp không áp dụng được zsh, nhưng chắc chắn sẽ chấp nhận nó
sshvà tùy chọn của nó ProxyCommand.
catnói chung là không đệm. Nếu nó làm trên hệ thống của bạn, hãy thử cat -u.
zshgiải pháp hoặc là mộtbashgiải pháp chấp nhận được?