我阅读了帮助阅读页面,但仍然没有意义。不知道使用哪个选项。
如何使用Bash一次读取N行?
这比它看起来更难。问题是如何保持文件句柄。
解决方案是创建另一个新的文件句柄,它像stdin(文件句柄0)一样工作但是是独立的,然后根据需要从中读取。
#!/bin/bash # Create dummy input for i in $(seq 1 10) ; do echo $i >> input-file.txt ; done # Create new file handle 5 exec 5< input-file.txt # Now you can use "<&5" to read from this file while read line1 <&5 ; do read line2 <&5 read line3 <&5 read line4 <&5 echo "Four lines: $line1 $line2 $line3 $line4" done # Close file handle 5 exec 5<&-