如果存在第三列,Bash打印输出行

时间:2013-09-09 10:22:14

标签: linux bash

我有一个脚本文件,其中包含按空格分隔的名字,姓氏和电话号码。不是每个人都有电话号码,我想打印出有电话号码的姓名。 该文件看起来像这样

Andy Frey 592895
Gregory Simons 6356345
George Hillton 
Fredrik Thomson 125423

1 个答案:

答案 0 :(得分:8)

您可以使用awk

轻松完成
[cnicutar@piper ~]$ awk 'NF==3' names 
Andy Frey 592895
Gregory Simons 6356345
Fredrik Thomson 125423

直接打击:

while read -a arr
    do if [ -n "${arr[2]}" ]
    then
        echo ${arr[@]};
    fi
done < names