[Shell Script]快速逐行读取文件

时间:2014-11-19 10:22:10

标签: shell readfile

我知道人们会说使用while

as

while read line; do
        echo "$line"
done < file

但是这种方法会阻止我的网页,我不知道原因......

然后我使用for作为

for line in file
do
        echo $line
done

for的风险是一行中可能有空格,然后我得到的将用空格分隔,

甚至我都擅长分割空间

就像我在一行中只需要date和$查询数据一样,

并且每一行将是&lt; 11月19日17:59:24 GMT 2014 12345678&#39;

所以我使用那种代码:

content=""
count=0
for line in $(cat file); do
        if [ $count -le 5 ]; then
                content=$content$line" "
                count=`expr $count + 1`
        else
                content=$content$line","
                count=0
        fi
done

(我想阅读每一行,并与&#39;,&#39;)

结合

但结果是当行太多时,for的所有方法都会加载数据太慢......

我使用的快速方法是cat,但我的cat没有参数-A或其他......

并且我不确定如何使用cat逐行显示文件

我也不知道为什么我也不能使用while。(可能原因是它比for慢)

那么,有没有其他方法可以快速逐行显示文件?

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

我知道这不是关于我的问题的真实答案,但我认为我仍然使用cat,并在我的客户端编码中使用解析器。由于我的数据每行都很简单,易于解析。

感谢大家的帮助!而且我希望它也有助于其他人!