在Unix shell中使用while循环读取文件。代码如下。
while IFS=, read V1 V2
#Statement
done<$FILE
如果$ FILE包含N条记录,则while循环从文件中读取N-1条记录。
请提出解决方案。
答案 0 :(得分:0)
如果最后一行没有换行符(默认read
终结符),那么它将返回最后一行的false
,循环将终止。处理此问题的常用方法是使用IFS=, read V1 V2 || [ -n "$V1" ]
作为while
循环条件...或者只是确保您的文件是“有效”文件并包含最终换行符。 (另请使用read -r
,除非您知道您希望read
解释反斜杠转义,并且您几乎肯定不想要这样做。)
- Etan Reisner