[eside-ghost] scripts...

txuruland en yahoo.es txuruland en yahoo.es
Mar Feb 21 16:14:54 CET 2006


Un poco de man antes de liarse con whiles e historias ...

"-R, -r, --recursive
              Read all files under each directory, recursively; this is 
equivalent to the -d recurse option."

grep -r patron * -> esto recorre recursivamente todos los ficheros desde el 
directorio en el que estes



On Tuesday 21 February 2006 15:Ender wrote:
> Aupa!
>
> Si quieres buscar de forma recursiva.... por ejemplo en ficheros x
>
> find /directorio -type f | while read linea; do
> 	if grep "PATRON" $linea  > /dev/null 2>$1; then
> 		#patron encontrado, haz lo que quieras aqui
> 		# el fichero lo tiene la variable $linea
> 		echo "Patron encontrado en $linea..."
> 	fi
> done
>
> # nota: uso while en vez de for por si los ficheros tienen espacios en
> los nombres.
>
> # nota 2: si solo quieres buscar ficheros xml por ejemplo el find podria
> ser...
>
> find /directorio -type f -name "*.xml"
>
> jugar con la potencia del find (-mindeppth, -maxdepth, -exec, ...) me
> parece bastante útil en vez de usar ls, aunque si realmente solo quieres
> un ls se puede usar.
>
> El mar, 21-02-2006 a las 15:47 +0100, halls escribió:
> > puedes hacer algo asi
> >
> > for F in *
> > do
> >   cat $F | grep patron
> > done
> >
> > el * ese siempre hace referencia a una lista de parametros, separada
> > con espacio, por ejemplo
> >
> > for F in 1 2 3
> > do
> >   echo $F
> > done
> >
> > pos te imaginas XD
> >
> > en nuestro caso * es el listado de ficheros del directorio actual...
> > podrias poner
> >
> > for F in /directorio/ke/me/de/la/gana/*
> >
> > etc...
> >
> >
> >
> > lo se, me explico como las setas... pero hago lo k puedo XD
> >
> > alejop!
> >
> > PD: acabo de releer tu email... si lo k kieres es sacar el nombre de
> > solo akellos ficheros, puedes, dentro del bucle poner algo asi: if [ !
> > "$(cat $F|grep patron)" = "" ]; then do echo $F; fi
> >
> >
> > El día 21/02/06, kapi59ttp <kapi59ttp en euskalnet.net> escribió:
> >         Wenas tardes!!!
> >         Me gustaria crear un script que mire el contenido de todos los
> >         ficheros que existen en un directorio y compruebe que si
> >         alguno de ellos cumple un patron dado. He intentado hacer algo
> >         por el estilo
> >
> >         listar ----> sacar el contenido de cada fichero ----> ver si
> >         cumple un patron ---> sacar el nombre del fich.
> >
> >         ls | cat ??? | grep patron ...
> >
> >         En eso he pensado basicamente, pero estoy un poko...se podria
> >         hacer con awk???
> >         Alguna idea para hacer un bucle y recorrer el resutaldo del
> >         ls???.
> >
> >         Eskerriko asko.
> >
> >         _______________________________________________
> >         eside-ghost mailing list
> >         eside-ghost en deusto.es
> >         https://listas.deusto.es/mailman/listinfo/eside-ghost
> >
> >
> > _______________________________________________
> > eside-ghost mailing list
> > eside-ghost en deusto.es
> > https://listas.deusto.es/mailman/listinfo/eside-ghost
>
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost


Más información sobre la lista de distribución eside-ghost