Re: Hacer un grep de más de una palabra por archivo

2009-05-07 Thread Roberto Alsina

Néstor Flores writes:

Supónganse que tengo el archivo "texto". Que tiene lo siguiente: 
  
la casa se encuentra en el campo 
el campo esta en Paraná 
Pedro está ahí 
Santa Fe está lejos 
  
Bueno, quiero que con un comando pueda obtener las líneas en las que están 
cualquiera de las dos palabras: casa o Pedro. Como salida, tendría que 
obtener: 
  
la casa se encuentra en el campo 
Pedro está ahí 


egrep Pedro\|casa texto



--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Re: Hacer un grep de más de una palabra por archivo

2009-05-08 Thread fernando sainz
El día 7 de mayo de 2009 19:41, Roberto Alsina
 escribió:
> Néstor Flores writes:
>
>> Supónganse que tengo el archivo "texto". Que tiene lo siguiente:   la casa
>> se encuentra en el campo el campo esta en Paraná Pedro está ahí Santa Fe
>> está lejos   Bueno, quiero que con un comando pueda obtener las líneas en
>> las que están cualquiera de las dos palabras: casa o Pedro. Como salida,
>> tendría que obtener:   la casa se encuentra en el campo Pedro está ahí
>
> egrep Pedro\|casa texto
>
>

Creo que en el man de grep viene una opción "-e" que es la que andas
buscando

grep -e "kk" -e "lll"  fichero.txt


Saludos.


>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
>
>


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Re: Hacer un grep de más de una palabra por archivo

2009-05-08 Thread Hector Colina
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

fernando sainz escribió:
> El día 7 de mayo de 2009 19:41, Roberto Alsina
>  escribió:
>> Néstor Flores writes:
> 
> Creo que en el man de grep viene una opción "-e" que es la que andas
> buscando
> 
> grep -e "kk" -e "lll"  fichero.txt
> 

Un compañero anterior comentaba usar egrep, tú indicas usar grep con la
opción -e, si no desean confundir al colistero díganle que lea el man
para que se encuentre con que... egrep y grep -E (en mayúscula) son el
mismo comando ergo ambos sirven exactamente para lo que él busca: buscar
varias palabras.

No obstante, tratar de hacerlo así sería como utilizar un cañón para
matar un mosquito: sirve pero estás subutilizándolo.

egrep funciona "realmente bien" en expresiones regulares complejas tales
como:
egrep "([0-9]+ab)*25098777" archivo_con_patrones_regulares

Además, si se llega a contabilizar el tiempo de búsqueda, se notará que
egrep es más lento que otros comandos cuando se utiliza para cosas
pequeñas; me tomé el atrevimiento de hacer un pequeño experimento:

Sea "test.1" un archivo que contiene el resultado del siguiente comando:

hec...@arepa:/tmp/1$ cat /usr/share/doc/*/README > test.1

Este archivo contiene 25489 líneas y 940708 caracteres

Si quisiera buscar 2 palabras, tendría varias estrategias, vean las
diferencias entre ambas

hec...@arepa:/tmp/1$ time fgrep -f patron test.1 > /dev/null

real0m0.009s
user0m0.008s
sys 0m0.000s
hec...@arepa:/tmp/1$ time egrep "debian | package" test.1 > /dev/null

real0m0.127s
user0m0.124s
sys 0m0.000s

La diferencia que se nombraba en los párrafos anteriores se ve acá, el
archivo patron contiene las palabras debian y package, pasándola como
argumentos contenidos en un archivo  a fgrep (fgrep es grep -F) funciona
más rápido que hacerlo con egrep.

Nada que no pude resolver leyendo el manual y ayudándome con google.

Saludos y disculpen lo extenso del mail.

- --
**
Hector Colina. Linux  counter id 131637
Debian user, aka e1th0r
Mérida-Venezuela http://e1th0r.gulmer.org.ve
Key fingerprint = 6FA1 6D2F CF9E 5C86 7DC5  EF2C 881F 07E7 D12F 702D
LA REVOLUCIÓN NO SE HACE UNICAMENTE CON LAS ARMAS
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkoEJNYACgkQiB8H59EvcC29DgCgh2Q0Ng5MC7Gt27X7oyDdOkzW
aZUAn3LEnPqh6VKj20ZCkWHCDN7vncfY
=bBKv
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Re: Hacer un grep de más de una palabra por archivo

2009-05-08 Thread Ricardo Albarracin B.
El Thu, 07 May 2009 14:41:33 -0300
Roberto Alsina  escribió:

> Néstor Flores writes:
> 
> > Supónganse que tengo el archivo "texto". Que tiene lo siguiente: 
> >   
> > la casa se encuentra en el campo 
> > el campo esta en Paraná 
> > Pedro está ahí 
> > Santa Fe está lejos [..]

Otra forma p uede ser esta:

cat fichero.txt | egrep "casa | Pedro | lejos"

Saludos
-- 
Atentamente.
+---+-+
| Ricardo Albarracin B. | email: ral...@gmail.com |
+---+-+


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org