> 文档中心 > 在shell中 `while read` 循环中嵌套 `read` 无效的问题解决

在shell中 `while read` 循环中嵌套 `read` 无效的问题解决

文章目录

问题代码如下:

在shell中 `while read` 循环中嵌套 `read` 无效的问题解决

运行程序时你会发现他根本不会等待你输入,就直接完成了,原因是两个read读取了同一个标准输入

有人说可以用for替换while read呀,但不行,因为for会根据空格来判断行。

解决方法:

将read的标准输入变更成其它文件描述符就行了,这样两个read就错开了

代码如下:

在shell中 `while read` 循环中嵌套 `read` 无效的问题解决

Enjoy !