elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Temas
Páginas: [1]
1  Programación / Scripting / Dudas en modificación de columnas AWK en: 23 Marzo 2018, 18:53 pm
Hola! Tengo un archivo capa2da.dat de varias filas (muchas) del tipo:

H 2.123456789 3.12456789 4.123456789 0 0 0

Necesito incluir en un script un comando que me altere la 4° columna restando una variable definida ya previamente en el shell, y las otras queden sin alterarse. Primero probe en modificar la 4° columna solamente con;

awk -v CTECRYSTAL="${CTECRYSTAL}" '{printf "%12.9f\n",$4-CTECRYSTAL}' capa2da.dat > capa2daZ.dat

Logre asi que hiciera la resta correctamente, pero solo obtengo la 4° columna, intente añadiendo las demas columnas sin alterar, asi:

awk -v CTECRYSTAL="${CTECRYSTAL}" '{printf "%12.9f\n",$1,$2,$3,$4-CTECRYSTAL,$5,$6,$7}' capa2da.dat > capa2daZ.dat

Pero me da error porque la primera columna no tiene la cantidad de caracteres suficientes, pero requiero que la columna 2 3 y 4 tengan dicha cantidad de caracteres. Tambien probe con:

awk -v CTECRYSTAL="${CTECRYSTAL}" '{print "\n",$1,$2,$3}{printf "%12.9f\n",$4-CTECRYSTAL}{print "\n",$5,$6,$7}' capa2da.dat > capa2daZ.dat

Con esto imprime todo lo que requiero, pero no respeta las filas... cada fila del input se transforma en 3 filas:

H 2.123456789 3.12456789
4.123456789 (alterada por la resta)
0 0 0

¿Alguien sabe como puedo arreglar eso en AWK, o con otros comandos de bash?

Saludos y gracias
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines