因此,我试图在不同的时间点并可能在子 shell 内消耗 ssh 命令的输出。我尝试使用 fifos 和 exec,如下所示:
exec 10< <(ssh host 'i=0;while :;do ((i++));echo $i;done')
read a <&10
echo $a
read a <&10
echo $a
我正在寻找的输出是:1和2。目前我得到1和1,每次我从fd 10读取时都会启动一个新进程。fifo也是如此。关于如何解决这个问题有什么想法吗?
编辑:我重新启动了电脑,问题就消失了。这可能是 wsl2 的另一个问题