while read讀取文本內容


讀取文件給 while 循環
方式一:

exec <FILE 
while read line 
do 
    cmd 
done 

方式二:

cat FILE_PATH |while read line 
do 
    cmd 
done 

方式三:

while read line 
do 
    cmd 
done <FILE

 

舉例:

ip.txt內容如下:

10.1.1.11 root 123
10.1.1.22 root 111
10.1.1.33 root 123456
10.1.1.44 root 54321

 

寫法1:

cat ip.txt | while read ip user pass
do
    echo "$ip--$user--$pass"
done

 

寫法2:

while read ip user pass
do
    echo "$ip--$user--$pass"
done < ip.txt

 

使用IFS作為分隔符讀文件

說明:默認情況下IFS是空格,如果需要使用其它的需要重新賦值

IFS=:

例如:

# cat test
chen:222:gogo
jie:333:hehe
# cat test.sh
#!/bin/bash
IFS=:
cat test | while read a1 a2 a3
do
    echo "$a1--$a2--$a3"
done

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM