如果命名管道中没有任何内容,我会这样做:
cat my_named_pipe
Run Code Online (Sandbox Code Playgroud)
它将等到数据到达。如果没有要读取的数据,是否有可以立即退出的标志?或者也许是我可以使用的 cat 以外的命令?
我也试过:
read val < "$my_named_pipe";
Run Code Online (Sandbox Code Playgroud)
但这也会等待下一个数据块 - 如果 fifo 为空,我不想等待。