Foros del Web » Administración de Sistemas » Unix / Linux »

Ordenar campos en filtro AWK!

Estas en el tema de Ordenar campos en filtro AWK! en el foro de Unix / Linux en Foros del Web. A ver nuevamente, expertos en scripting (alesanchez!! help) Esto no es ningun script ni nada, solo un simple filtro en AWK, pero no se como ...
  #1 (permalink)  
Antiguo 07/04/2006, 20:19
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Ordenar campos en filtro AWK!

A ver nuevamente, expertos en scripting (alesanchez!! help)
Esto no es ningun script ni nada, solo un simple filtro en AWK, pero no se como hacerlo!!

Actualmente listo directorios de la siguiente forma:
Código:
sh4ka@domination [/backup/]# ls -alh *.tar.gz | awk '{print $6,$7,"      ",$5,"    ", $8, "   ",$9}'
abr 6        13G      05:36     alman.tar.gz
abr 6        217M      01:06     charly8.tar.gz
abr 6        65K      06:16     contacto.tar.gz
Y lo que quiero es que las columas queden ordenadas al igual que cuando hacemos un simple "ls -alh", quiero que las columnas se muestren todas como la columna que muestra la fecha y el tamaño, pero quedan mal alineadas como ven (hora y nombre de archivo) :(

any idea ?

Última edición por Sh4ka; 07/04/2006 a las 20:36
  #2 (permalink)  
Antiguo 08/04/2006, 09:33
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 3 meses
Puntos: 29
Bueno yo no soy alesanchez pero espero te sirva mi ayuda, lo que entendi es que quires que te quede bonita la salida ¿cierto?

Cita:
ls -alh *.tar.gz | awk '{print $6,$7,"\t",$5,"\t", $8, "\t",$9}'
Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #3 (permalink)  
Antiguo 08/04/2006, 09:38
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
Yo realmente de awk se poco y nada, asi que no te pude ayudar.
Igualmente aunque Koverart diga que no sabe nada, no le creo

Saludetes!!!!
__________________
¡Volviendo a la programación!
  #4 (permalink)  
Antiguo 08/04/2006, 15:34
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Gracias Koveart (y no te pongas celoso q ya se q tu tmb sabes un monton :p), dije "alesanchez" porque siempre tiene respuesta a mis dudas puntuales de scripting.

En un rato voy a retornar al script y luego les cuento que tal me fue.

Gracias!
  #5 (permalink)  
Antiguo 08/04/2006, 17:57
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Gracias KOVEART, eso era justo lo que necesitaba, funciono sin problemas! ;)
  #6 (permalink)  
Antiguo 08/04/2006, 18:02
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 3 meses
Puntos: 29
Ok gracias por colaborar en el foro Sh4ka, ademas siempre es un placer ayudarte.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #7 (permalink)  
Antiguo 10/04/2006, 18:04
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
No voy a abrir otro post porque viene del mismo script, gracias a todos, quedo funcionando a la perfeccion! ... les cuento, es un script que verifica la integridad de los backups hechos por el sistema, si estan bien, si no falta alguno de algun usuarios específico, etc..

El tema es que por el script ha enloquecido!!
Corro el script "sh script.sh", y de una pasada me arroja los resultados buenos (cuando evaluo si se hicieron los backups o no) por ej.

"Los backups existen, esta es la fecha de los mismos $FECHA, bal bla"

Pero al segundo despues, lo corro nuevamente, y el script me da como que esta todo mal, cuando esta bien!!:

echo "HOUSTON WE HAVE A PROBLEM --- no hay backups hechos ---"

No se si es algo que queda en memoria o que caraj** pero me ha pasado con otros scripts anteriormente también que primero me dan el resultado esperado, y luego me dan como que esta todo mal, pero no es asi, pero tampoco tengo errores de sintaxis.. sino la consola me diria.. no se como puedo hacer ???
  #8 (permalink)  
Antiguo 10/04/2006, 21:55
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Esto es lo que estoy usando para evaluar si la respuesta dice si se crearon los backups o no... a ver tal vez tenga algun error en la sintaxis, pero no creo ya que me tendria que aparecer en pantalla:

En la primera instancia del IF, guardo el resultado de un "ls" en el directorio de los backups, y luego mediante el cat, etc, etc veo si habian backups generados, si hay backups el "grep gz" lo indica y entonces el wc -w no va a ser igual a 0, y se descarta este paso, ahi ya se sabe q hay backups, entonces luego en el ELSE se listan...

El problema es que "HOUSTON WE HAVE A PROBLEM" es lo que aparece aunque los backups estan bien:

Código:
 if [ $(cat $DAILYLOG1 | grep "gz" > $DAILYLOG | cat $DAILYLOG | wc -w) -eq 0 ]; then
        echo "HOUSTON WE HAVE A PROBLEM!! -- No hay backups hechos --"
        echo "Puede que sea una falsa alarma, corra el script nuevamente para comprobar"
        echo
   else
        listar
        echo "Listando Backups DIARIOS"
        echo "------------------------"
        cd $DAILY
        ls -lth *.tar.gz | awk '{print $6,$7,"\t",$5,"\t", $8, "\t",$9}'
        echo
        verdaily
   fi
  #9 (permalink)  
Antiguo 10/04/2006, 21:59
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
Y porque usas "sh script.sh" si estas usando BASH? al menos yo siempre te di consejos sobre BASH, no sobre SH.

Saludos!!!
__________________
¡Volviendo a la programación!
  #10 (permalink)  
Antiguo 10/04/2006, 22:03
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Siempre los guarde asi.. :| y los ejecute asi, aunque aveces solo les doy ./script y listo, no veo mayor diferencia entre ejecutarlos asi o del otro modo.. oupss.. puede ser ese el problema ? pense que no habia diferencia entre bash y sh... veo que me equivoque...
  #11 (permalink)  
Antiguo 10/04/2006, 22:13
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 3 meses
Puntos: 29
BASH=Bourne Again Shell --> hell esarrollado por GNU
Sh==Bourn Shell --> primer shell bajo unix

Pero si escribes ./script se jecuta el shell que tienes en la primera linea comentado os ea que debe ser bash si no me equivoco.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #12 (permalink)  
Antiguo 10/04/2006, 22:23
Avatar de Sh4ka  
Fecha de Ingreso: marzo-2005
Mensajes: 205
Antigüedad: 19 años, 8 meses
Puntos: 0
Si, es /bin/bash.. aveces los ejecuto como sh script y aveces como ./script .. no veo la diferencia por mas que sean diferentes como lo mencionas.

Ahora tienen alguna idea del extraño comportamiento del script ?
  #13 (permalink)  
Antiguo 10/04/2006, 22:26
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 3 meses
Puntos: 29
Pues solamente seria mirando el comportamiento y el codigo directamente para saber que es lo que esta haciendo el script en cuestion.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”

Última edición por Koveart; 10/04/2006 a las 22:48
  #14 (permalink)  
Antiguo 15/04/2006, 17:00
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 3 meses
Puntos: 29
A modo de informacion dejo este enlace muy bueno para introducirnos en el mundo de ls epxresiones regulares, me parecio excelente por eso lo quise compartir.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #15 (permalink)  
Antiguo 15/04/2006, 20:55
Avatar de -Defero-
Colaborador
 
Fecha de Ingreso: julio-2004
Ubicación: Guipúzcoa
Mensajes: 4.776
Antigüedad: 20 años, 4 meses
Puntos: 76
Ya que estamos compartiendo enlaces... aquí un tutorial de programación en shell. Y sobre un posible uso de las expresiones regulares, mi bitácora en Barrapunto.
__________________
abogado en Errenteria + procuradora en San Sebastián = equipo imparable
  #16 (permalink)  
Antiguo 11/07/2010, 14:34
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ordenar campos en filtro AWK!

yo también necesitaría ayuda para ordenar campos colocando filtros awk para generar grafos en un programa que dibuja redes sociales...alguien podría ayudarme!por favor...gracias :)
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 10:07.