这个嵌套在bash中循环的错误是什么?

时间:2015-11-19 17:38:59

标签: linux bash shell gentoo

如下图所示,第一个循环旨在从文本文件中读取步骤,而第二个循环旨在根据用户在屏幕上看到的内容接受用户的选项,并执行某些操作,例如配置package.use或者某些内容否则,然后继续执行下一步,直到步骤结束。

问题是第二个while循环既不显示选项也不连续读取文本文件中的步骤,它只是在执行第一步之后退出两个while循环,在这种情况下,它显示执行{{{ 1}}并退出两个循环。

步骤文本文件:

emerge --pretend ceph

嵌套while循环:

ceph
jdk
firefox
...

1 个答案:

答案 0 :(得分:0)

问题是你正在重定向stdin外部循环来自你的文件,当你尝试在内循环中执行read时,它也会从该文件中读取。

有关可能的解决方案,请参阅以下问题:

Read input in bash inside a while loop