巧用IFS读文件
有如下的sample data:
tab1,col1
tab2,col2
tab3,col3
...
我们需要取出每一行每一列的值。
经常看到如下的代码:
while read aline
do
tab=$(echo $aline | awk -F',' '{print $1}')
col=$(echo $aline | awk -F',' '{print $2}')
echo $tab $col
done < tab.lst
巧用IFS可以让上面的代码更简洁:
while IFS=, read -r tab col
do
echo $tab $col
done < tab.lst