Extraer varias lineas de texto

Raul Veleiro A (en Yahoo) raul_veleiro en yahoo.es
Sab Oct 27 11:17:16 BST 2007


--- Andrés Flórez <andrewflorez en gmail.com> escribió:

> Hola Raul
> 
> Los comandos funcionaron,,, pero el asunto es que yo
> tengo el archivo
> 
> >LmjF02.0410|RNA-editing complex protein
> MP81,putative
>
MHTAVLRQLSTPSTRPSGTANGGFGSSGVRDGSAPAPPSRGDGAATAPQQRSSHGVSSEL
> >LmjF26.0390|RNA editing 3' terminal uridylyl
> transferase 2,RET2, RNA editing complex MP57
>
MHAPTPLYLYVAVTRGLCSSAVAASSSADAASSPSAASSSTSEGVSYASHLVASNDHYVQ.....
> 
> y son muchas mas lineas de ese tipo....
> 
> pero quiero extraer por ejemplo asi:
> 
> >LmjF02.0410|RNA-editing complex protein
> MP81,putative
>
MHTAVLRQLSTPSTRPSGTANGGFGSSGVRDGSAPAPPSRGDGAATAPQQRSSHGVSSEL
> 
> y ese comando me las muestra todas,  aun si yo solo
> especifico uno como este
> LmjF02.0410
> 
> Agradezco tu ayuda
> 
> bye
> 
> El día 26/10/07, Raul Veleiro A (en Yahoo)
> <raul_veleiro en yahoo.es> escribió:
> >
> >
> > --- Andrés Flórez <andrewflorez en gmail.com>
> escribió:
> >
> > > Muchas gracias Raul,
> > >
> > > lo intente pero el asunto es que me sale un
> error:
> > >
> > > tr: si no se está truncando conjunto1, cadena2
> debe
> > > ser no vacía
> > >
> > > yo sinmebargo yo lo reemplacé por un caracter y
> > > funcion el comando tr
> > >
> > >
> > >
> > > El día 26/10/07, Raul Veleiro A (en Yahoo)
> > > < raul_veleiro en yahoo.es> escribió:
> > > >
> > > >
> > > > --- Andrés Flórez <andrewflorez en gmail.com>
> > > escribió:
> > > >
> > > > > Hola a todos:
> > > > >
> > > > > Tengo una dificultad para manipular archivos
> de
> > > > > texto:
> > > > >
> > > > > Un archivo tiene varias lineas de la
> siguiente
> > > > > forma:
> > > > >
> > > > > linea indicadora:
> > > > >
> > > > > >Nombre de la secuencia
> > > > >
> > > > > siguiente linea:
> > > > >
> > > > > cadena de caracteres.
> > > > >
> > > > > AKGKA ......
> > > > >
> > > > > Ejemplo:
> > > > >
> > > > > >LmjF02.0410|RNA-editing complex protein
> MP81,
> > > > > putative
> > > > >
> > > >
> > >
> >
>
MHTAVLRQLSTPSTRPSGTANGGFGSSGVRDGSAPAPPSRGDGAATAPQQRSSHGVSSEL
> > > > > >LmjF26.0390|RNA editing 3' terminal
> uridylyl
> > > > > transferase 2,RET2, RNA
> > > > > editing complex MP57
> > > > >
> > > >
> > >
> >
>
MHAPTPLYLYVAVTRGLCSSAVAASSSADAASSPSAASSSTSEGVSYASHLVASNDHYVQ
> > > > >
> > > > >
> > > > > Necesito redireccionar a un archivo de texto
> > > por
> > > > > ejemplo la linea que dice
> > > > > >LmjF02.0410|RNA     HASTA   EL FINAL DE LA
> > > CADENA
> > > > > DE CARACTERES, MEJOR
> > > > > DICHO HASTA ANTES DONDE EMPIEZA LA SIGUIENTE
> > > LINEA
> > > > > CON EL SIGNO >
> > > > >
> > > > > En otras palabras necesito extraer un
> intervalo
> > > > > desde una linea > con un
> > > > > nombre hasta la proxima linea > con otro
> nombre
> > > > >
> > > > >
> > > > > Les agradezco mucho cualquier ayuda.
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Andrés F. Flórez
> > > > >
> > > > > Associate Researcher
> > > > > PECET.
> > > > > Universidad de Antioquia.
> > > > > Medellín-Colombia.
> > > > > Carrera 53 # 61 - 30
> > > > > Phones: (574) 210 6507 / 02
> > > > > Fax: (574) 210 6511
> > > > > Cell phone: 3103462268
> > > > > > --
> > > > > ubuntu-es mailing list
> > > > > ubuntu-es en lists.ubuntu.com
> > > > >
> > >
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-es
> > > >
> > > > Aquí esta Andrés, no hace falta el bucle for
> que
> > > te
> > > > mencione antes:
> > > >
> > > >
> > > > cat p.txt | tr '\n' ' ' | awk 'BEGIN { RS =
> ">" ;
> > > FS =
> > > > ">" } ; { print $1, $2 }'
> > > >
> > > > TRUCO: jugar con los RS (Record Separator) y
> FS
> > > (Field
> > > > Separator) del AWK.
> > > >
> > > > El AWK es un lenguaje de progrmacion muy
> potente
> > > > diseñado exclusimante para procesar ficheros
> de
> > > texto.
> > > >
> > > > Aqui esta el manual:
> > > >
> http://www.gnu.org/software/gawk/manual/gawk.html
> > > >
> > > >
> > > > Raul
> > > >
> > > > Solo hay 10 tipos de personas en el mundo;
> > > > Los que entienden binario y los que no:
> > > > Use Linux-Ubuntu !
> > > > _o)
> > > > /\\
> > > > \_V
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> >
>
____________________________________________________________________________________
> >
> > > > Sé un Mejor Amante del Cine
> > > > ¿Quieres saber cómo? ¡Deja que otras personas
> te
> > > ayuden!
> > > >
> > >
> >
>
http://advision.webevents.yahoo.com/reto/entretenimiento.html
> > > >
> > > > --
> > > > ubuntu-es mailing list
> > > > ubuntu-es en lists.ubuntu.com
> > > >
> > >
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-es
> > > >
> > >
> > >
> > >
> > > --
> > > Andrés F. Flórez
> > >
> > > Associate Researcher
> > > PECET.
> > > Universidad de Antioquia.
> > > Medellín-Colombia.
> > > Carrera 53 # 61 - 30
> > > Phones: (574) 210 6507 / 02
> > > Fax: (574) 210 6511
> > > Cell phone: 3103462268
> > >
> >
> > El segundo caracter a sustituir es ' ' y no '', es
> > decir se sustituye ENTER por un espacio. Segun el
> > error que has enviado, estas sustituyendo "ENTER"
> (\n)
> > por "nada" y eso no le gusta al tr.
> >
> > A mi si me funciona:
> >
> > raul en Ubuntu32BIT:~$ cat p.txt
> > >LmjF02.0410|RNA-editing complex protein
> MP81,putative
> >
>
MHTAVLRQLSTPSTRPSGTANGGFGSSGVRDGSAPAPPSRGDGAATAPQQRSSHGVSSEL
> > >LmjF26.0390|RNA editing 3' terminal uridylyl
> > transferase 2,RET2, RNA editing complex MP57
> >
>
MHAPTPLYLYVAVTRGLCSSAVAASSSADAASSPSAASSSTSEGVSYASHLVASNDHYVQ
> > raul en Ubuntu32BIT:~$
> > raul en Ubuntu32BIT:~$ cat p.txt | tr '\n' ' ' | awk
> > 'BEGIN { RS = ">" ; FS = ">" } ; { print $1, $2 }'
> >
> > LmjF02.0410|RNA-editing complex protein
> MP81,putative
> >
>
MHTAVLRQLSTPSTRPSGTANGGFGSSGVRDGSAPAPPSRGDGAATAPQQRSSHGVSSEL
> >
> > LmjF26.0390|RNA editing 3' terminal uridylyl
> > transferase 2,RET2, RNA editing complex MP57
> >
>
MHAPTPLYLYVAVTRGLCSSAVAASSSADAASSPSAASSSTSEGVSYASHLVASNDHYVQ
> >
> > raul en Ubuntu32BIT:~$
> >
> > Raul
> >
> > Solo hay 10 tipos de personas en el mundo;
> > Los que entienden binario y los que no:
> > Use Linux-Ubuntu !
> > _o)
> > /\\
> > \_V
> >
> >
> >      
> ______________________________________________
> > Pregunta, Responde, Descubre.
> > Comparte tus consejos y opiniones con los usuarios
> de Yahoo! Respuestas
> > http://es.answers.yahoo.com/info/welcome
> >
> 
> 
> 
> -- 
> Andrés F. Flórez
> 
> Associate Researcher
> PECET.
> Universidad de Antioquia.
> Medellín-Colombia.
> Carrera 53 # 61 - 30
> Phones: (574) 210 6507 / 02
> Fax: (574) 210 6511
> Cell phone: 3103462268
> > -- 
> ubuntu-es mailing list
> ubuntu-es en lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-es

Vale, entonces agregale un comando "grep" al final.

cat p.txt | tr '\n' ' ' | awk 'BEGIN { RS = ">" ; FS =
">" } ; { print $1, $2 }' | grep "LmjF02.0410"

Mete en el grep el texto que quieras extraer.

salu2.




Raul

Solo hay 10 tipos de personas en el mundo;
Los que entienden binario y los que no:
Use Linux-Ubuntu !
 _o)
 /\\
 \_V


       
______________________________________________ 
Pregunta, Responde, Descubre. 
Comparte tus consejos y opiniones con los usuarios de Yahoo! Respuestas 
http://es.answers.yahoo.com/info/welcome



Más información sobre la lista de distribución ubuntu-es