Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/07/2014, 09:43
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Contar el número de registros diferentes en un campo

para hacerlo solamente con awk, podés hacer algo como esto

Código BASH:
Ver original
  1. awk -F'|' '
  2.        BEGIN {
  3.                n6 = 0;
  4.                n7 = 0;
  5.                n8 = 0;
  6.        }
  7.        $6~/6/ {
  8.                n6 += 1;
  9.        }
  10.        $6~/7/ {
  11.                n7 += 1;
  12.        }
  13.        $6~/8/ {
  14.                n8 += 1;
  15.        }
  16.        END {
  17.                print 'ocurrencias de 6: ' n6;
  18.                print 'ocurrencias de 7: ' n7;
  19.                print 'ocurrencias de 8: ' n8;
  20.        }
  21. '

Con AWK podés usar vectores asociativos, lo que te permitiría iterar sobre cada línea, "preguntar" si el valor en el campo 6 ya está en el vector, y si es así, incrementar (de lo contrario, crear con valor 0). Usando el bloque END podés imprimir cada valor en el vector.