你的位置:首页 > 操作系统

[操作系统]如何输出第二列相同的行


文本格式如下,以“|”作为分隔符

10999201508261233197418182901054|63a96a66ba024913aa1c0d377cf95fb4||20150826|aa10999201508261233197418182901054|63a96a66ba024913aa1c0d377cf95fb3||20150826|bb

如何输出第二列相同的行,即如果第二列的值已存在,则输出该行的值。

脚本如下:

#!/bin/bashi=0a[0]=""while read linedo  newline=`echo $line |cut -d"|" -f2`  for(( j=0;j<=$i;j++ ))  do   if [ "${a[$j]}" = "$newline" ];then     echo $line   fi  done  if [ $[$i+1] -eq $j ];then   i=$[$i+1]   a[$i]=$newline  fidone < 1.txt

关键是数组的运用