Shell指令碼逐行讀取檔案

2021-09-26 20:50:11 字數 806 閱讀 8139

**:

方法1:while迴圈中執行效率最高,最常用的方法。

while read line

doecho $line

done  < filename

注釋:這種方式在結束的時候需要執行檔案,就好像是執行完的時候再把檔案讀進去一樣。

方法2 : 管道法: cat $filename | while read line

cat filename | while read line

doecho $line

done

注釋:當遇見管道的時候管道左邊的命令的輸出會作為管道右邊命令的輸入然後被輸入出來。

方法3    for  迴圈。

for  line  in  `cat filename`

doecho $

done

在各個方法中,for語句效率最高,而在while迴圈中讀寫檔案時,第一種方式執行效率最高。

for逐行讀和while逐行讀是有區別的,如:

$ cat t.txt

1111

2222

3333 4444 555

$ cat t.txt | while read line; do echo $; done

1111

2222

3333 4444 555

$ for line in `cat t.txt`; do echo $; done

1111

2222

3333

4444

555

如何用Shell逐行讀取檔案

在學習linux shell scripts時,乙個最常見的錯誤就是用for for line in cat file.txt do 迴圈逐行讀取檔案。下面的例子可以看出這樣做的結果。檔案file.txt內容 cat file.txt this is the row no 1 this is the...

shell 逐行讀取檔案的內容

說明 shell 逐行讀取文字檔案內容。示例 讀取 etc passwd 檔案內容。1 python view plain copy bin bash ifs n 0 forline in cat etc passwd do n expr n 1 echo e n t line done 2 pyt...

如何用Shell逐行讀取檔案

在學習linux shell scripts時,乙個最常見的錯誤就是用for for line in cat file.txt do 迴圈逐行讀取檔案。下面的例子可以看出這樣做的結果。檔案file.txt內容 cat file.txt this is the row no 1 this is the...