coproc
是 Bash 中的一个内置命令,用于创建一个协程进程
下面是一个简单的例子,展示了如何使用 coproc
和读取剩余的输出:
#!/bin/bash
# 创建一个协程进程,执行 "ping" 命令
coproc mycoproc { ping -c 4 www.google.com; }
# 读取协程进程的输出
while read -r line; do
echo "Output: $line"
done <&"${mycoproc[0]}"
# 等待协程进程结束
wait $!
在这个例子中,我们创建了一个名为 mycoproc
的协程进程,执行了 ping
命令。然后,我们使用 read
命令从协程进程的标准输出中读取数据,并将其输出到终端。最后,我们等待协程进程结束。
注意,coproc
命令创建了两个文件描述符:${mycoproc[0]}
用于读取协程进程的标准输出,${mycoproc[1]}
用于写入协程进程的标准输入。在这个例子中,我们只需要读取输出,所以只使用了 ${mycoproc[0]}
。
领取专属 10元无门槛券
手把手带您无忧上云