我有两个 bash 脚本。
一个脚本写入 fifo。第二个从 fifo 读取,但在第一个结束之后写入。
但有些东西不起作用。我不明白问题出在哪里。这是代码。
第一个脚本是(作者):
#!/bin/bash
fifo_name="myfifo";
# Se non esiste, crea la fifo;
[ -p $fifo_name ] || mkfifo $fifo_name;
exec 3<> $fifo_name;
echo "foo" > $fifo_name;
echo "bar" > $fifo_name;
第二个脚本是(读者):
#!/bin/bash
fifo_name="myfifo";
while true
do
if read line <$fifo_name; then
# if [[ "$line" == 'ar' ]]; then
# break
#fi
echo $line
fi
done
有人可以帮我吗?
谢谢
将第二个脚本替换为:
#!/bin/bash
fifo_name="myfifo"
while true
do
if read line; then
echo $line
fi
done <"$fifo_name"
这只会打开 fifo 一次并读取其中的每一行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)