Linux/Unix Shell Scripting - awk que separe campos de linea

 
Vista:

awk que separe campos de linea

Publicado por vigaros (1 intervención) el 23/11/2011 16:05:51
Hola muy buenas,

Estoy intentando realizar el siguiente script:

dada una linea de fichero, separar cada linea por campos, y ejecutar un comando con cada campo recogido.

Lo que realizo es:

"el contenido del fichero es:"

proyecto1,proyecto2,proyecto3, proyecto4


#Calculo el total de campos que vienen
TOTAL=`cat fichero.txt | awk -F, '{print NF}'`

#voy recogiendo los campos de la linea y ejecuto comando
for i in `seq 1 $TOTAL`
do
PROYECTO=` cat fichero.txt | awk -F, '{print $i}`
rm -rf $PROYECTO
done

Me falla en que la orden PROYECTO=` cat fichero.txt | awk -F, '{print $i}`
no me esta recogiendo cada campo del registro, si no el registro completo.

Alguna ayuda?
gracias
Sebas
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
sin imagen de perfil
Val: 50
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

awk que separe campos de linea

Publicado por caic (99 intervenciones) el 28/11/2011 10:37:29
Hola,

¡Ojo! Que has cerrado las comillas de ejecución pero no las del print:

PROYECTO=` cat fichero.txt | awk -F, '{print $i}`

Lo correcto sería:

PROYECTO=` cat fichero.txt | awk -F, '{print $i}'`

Puede ser por eso que te hace cosas raras?

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar