Unix - Script AWK con parámetros

 
Vista:

Script AWK con parámetros

Publicado por PasCuAL (1 intervención) el 02/04/2006 13:27:35
Hola

Necesito crear un script utilizando awk que tome como primer parámetro un apellido y un fichero de datos (se trata de un listado de alumnos). El objetivo es mostrar por pantalla cuántos alumnos hay con ese apellido en primero, segundo y tercer curso buscando en la lista.

Podría ser algo parecido a esto:

#!/bin/ksh
awk -F\; 'BEGIN {print "Listando..."}
($1~/'$var'/) && ($4 == 1) {tot1++}
($1~/'$var'/) && ($4 == 2) {tot2++}
($1~/'$var'/) && ($4 == 3) {tot3++}
END {
total = tot1 + tot2 + tot3
print "Apellido Primero Segundo Tercero TOTAL"
print $var" "tot1" "tot2" "tot3" "total }' $var datos.csv

Pero el problema está aquí: ($1~/'$var'/) no funciona
¿Cómo se podría hacer para que la cadena leída por consola (por ej. ALVAREZ), que se almacena en $var, se pueda comparar correctamente con el campo $1 de la lista que contiene el primer apellido de los alumnos?
¿habría que emplear algún echo por alguna parte?

URGENTE, GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder