Buenas,
estoy empezando con awk y como siempre más por necesidad que por gusto.
Necesito sacar dada una lista y en función de un valor numerico dos
listados. Además quiero ordenar los resultados segun otro campo. He
mirado y creo que la mejor opción es awk. Mi duda surge a la hora de
emplear sort para ordenarlo por este segundo campo. Si introduzco un
pipe entre print linea y el fichero como entiendo que ha de ir no me
funciona. el los ejemplos que he seguido de una sola línea del estilo
awk 'BEGIN {FS=":"}; {print $1,$5 | "sort"}' /etc/passwd
funciona pero no sé como pasarle el sort dentro de un if. Por lo que he
leido el if del awk es bastante simple y la verdad es que no se muy bien
como hacerlo. Si alguien me puede arrojar algo de luz....Muchas gracias
por vuestro tiempo. Os pego más o menos mi problema
#!/bin/bash
<codigo>
awk -F ":" '
{
if ($(NF) <5) <--- campo numerico de referencia
print $0 | sort - t: -r -k3 > "NO_VALIDO"; <----Esto es lo que no
funciona
else
print $0 > "VALIDO" <--Esto si que funciona pero logicamente sin
ordenar los pasa tal y como los lee. En principio no válido
}' salida.txt
si hago cat NO_VALIDO | sort -t: -r -k3 >otroNO_VALIDO.txt hace lo que
busco es por esto que creo que algo me paso. Gracias otra vez
EM
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]