Foros del Web » Programación para mayores de 30 ;) » Programación General »

script awk (mayor numero de una columna)

Estas en el tema de script awk (mayor numero de una columna) en el foro de Programación General en Foros del Web. Hola, soy nuevo en el foro, espero me puedan ayudar con una duda, veran tengo un script en awk el cual me da este archivo ...
  #1 (permalink)  
Antiguo 25/02/2010, 08:15
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 1 mes
Puntos: 0
Exclamación script awk (mayor numero de una columna)

Hola, soy nuevo en el foro, espero me puedan ayudar con una duda, veran tengo un script en awk el cual me da este archivo de salida:
Código:
1:1   enabled  LinkDown(Auto)     0            0            0
1:2   enabled  100full(Auto)      14122212     3803044225   1
1:3   enabled  100half(Auto)      5336414      882243861    0
1:4   enabled  100full(Auto)      1786715      353997400    27
1:5   enabled  LinkDown(Auto)     0            0            0
1:6   enabled  100full(Auto)      5433154      2108110385   2
1:7   enabled  100full(Auto)      1019140      286375572    0
1:8   enabled  100full(Auto)      4191862      389847950    0
1:9   enabled  100full(Auto)      3473273      2413892624   250
1:10 enabled  100full(Auto)      3572190      437928252    1
1:11 enabled  100full(Auto)      5217887      537726872    0
1:12 enabled  LinkDown(Auto)     0            0            0
1:13 enabled  100full(Auto)    4999095      2009564172   34
1:14 enabled  LinkDown(Auto)     0            0            0
1:15 enabled  LinkDown(Auto)     0            0            0
1:16 enabled  LinkDown(Auto)     0            0            0
1:17 enabled  LinkDown(Auto)     0            0            0
1:18 enabled  LinkDown(Auto)     0            0            0
1:19 enabled  LinkDown(Auto)     0            0            0
1:20 enabled  LinkDown(Auto)     0            0            0
1:21 enabled  LinkDown(Auto)     0            0            0
1:22 enabled  LinkDown(Auto)     0            0            0
1:23 enabled  LinkDown(Auto)     0            0            0
1:24 enabled  LinkDown(Auto)     0            0            0
1:25 enabled  100full(Auto)    82705067     3000016125   0
1:26 enabled  LinkDown(Auto)     0            0            0

hasta ahora solo puedo hacer que me muestre un dato, con esta linea

awk '$1 > max { max=$1; linea=$6 }; END { print max, linea"\n"}' archivo.txt

esta linea me da como resultado:

1:9 enabled 100full(Auto) 3473273 2413892624 250

que es el numero mayor de la ultima columna, como le hago para que me de una salida con los 5 numeros mayores de la ultima columna, algo asi, porfavor ayuda:

1:9 enabled 100full(Auto) 3473273 2413892624 250
1:13 enabled 100full(Auto) 4999095 2009564172 34
1:4 enabled 100full(Auto) 1786715 353997400 27
1:6 enabled 100full(Auto) 5433154 2108110385 2
1:2 enabled 100full(Auto) 14122212 3803044225 1
  #2 (permalink)  
Antiguo 25/02/2010, 08:47
 
Fecha de Ingreso: enero-2008
Mensajes: 614
Antigüedad: 16 años, 3 meses
Puntos: 57
Respuesta: script awk (mayor numero de una columna)

Y debes utilizar awk? seria mucho mas facil utilizar sort para ordenar los datos por la ultima columna y obtener las primeras/ultimas 5 lineas con head/tail
  #3 (permalink)  
Antiguo 14/03/2011, 16:04
 
Fecha de Ingreso: marzo-2011
Mensajes: 1
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: script awk (mayor numero de una columna)

Gente tengo un problema similar quiero un script en awk; ya que tengo el archivo:
archivo.txt
p38 1lez_modf -3 G 1lez_modf_1_0.pdb 0.850
p38 1lez_modf -3 G 1lez_modf_1_1.pdb 0.840
p38 1lez_modf -3 G 1lez_modf_1_2.pdb 0.840
p38 1lez_modf -3 G 1lez_modf_1_3.pdb 0.840
p38 1lez_modf -3 G 1lez_modf_1_4.pdb 0.840
p38 1lez_modf -3 A 1lez_modf_2_0.pdb 0.000
p38 1lez_modf -3 A 1lez_modf_2_1.pdb 0.000
p38 1lez_modf -3 A 1lez_modf_2_2.pdb 0.000
p38 1lez_modf -3 A 1lez_modf_2_3.pdb 0.000
p38 1lez_modf -3 A 1lez_modf_2_4.pdb 0.000
y quiero obtener la linea completa con el menor valor para la coluna 6.En el ejemplo seria cualquier linea que tenga el valor 0.000
es decir espero la salida
p38 1lez_modf -3 A 1lez_modf_2_0.pdb 0.000
espero me puedan ayudar
desde ya muchas gracias

Etiquetas: awk, columna, mayor, numero
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:55.