<分区>
我遇到了一个奇怪的错误,
我有一个包含一些输入的文件,根据这些输入,我要求用户确认并继续执行操作(如下所示),
#!/bin/bash
func() {
cat testing | while read line
do
if [ $line = "hi" ]
then
while true
do
read -p "[y/n] : " c
case $c in
[nN] ) return 1;;
[yY] ) return 0;;
* ) echo "Enter y/Y or n/N";;
esac
done
fi
echo "HELLO !!"
done
}
func
由于函数中的 while read line,实际的 read -p "[y/n] : " 从上面的 testing 文件而不是 STDIN 中选择输入。
如果删除 cat 测试,程序工作正常 | while read line 循环(这显然不是我想要的)。
有没有人遇到过这个问题或者有人可以帮我解决这个问题吗?
提前致谢!