Hola, no sé si esto es lo que necesitas, sólo puedes tener un directorio con el nombre 2005 y dentro de este un único 05, así que:
find base/doc/2005/05 -type f -exec cat {} \;
como ves puedes poner el path relativo del directorio en el que quieres
buscar, el -type f es para que sólo tome archivos como resultados.
Saludos.
On Mon, 2005-07-18 at 22:08 +0200, mario wrote:
> El lun, 18-07-2005 a las 21:57 +0200, Jesús Genicio escribió:
> > Hola a todos/as:
> >
> > Tengo una estructura de directorios tal que así.
> >
> > base__
> > |
> > |__doc__
> > |
> > |_2004__
> > | |
> > | |__01__
> > | |datos en forma de archivos .htm ( varios)
> > |_2005__
> > |
> > |__02__
> > |datos en forma de archivos .htm ( varios)
> >
> > Así con los años 1995-2005 y por meses.
> >
> > Ejecuto la orden
> >
> > find base/doc/2005 -name 05 -exec find {} -name 'ventas*.htm' \;
> >
> > y me da los archivos de ese año 2005 y ese mes 05 correspondientes a
> > ventas, ahora quiero hacer un cat de los archivos que me entrega y un
> > greep para encontrar datos concretos. ¿Cómo se anida otra orden a la
> > segunda "find".
> >
> > No se si me explico bien....
> >
> > Así:
> >
> > find base/doc/2005 -name 05 -exec find {} -name 'ventas*.htm' -exec cat
> > {} \; \;
> >
> > No me deja.
> >
> > find base/doc/2005 -name 05 -exec find {} -name 'ventas*.htm' \; -exec
> > cat {} \;
> >
> > Tampoco.
> >
> > ¿Me podeís decir algo.?
>
> Antes de empezar decirte que no manejo find más que para mostrar todos
> los archivos en un directorio pero bueno como solución te puede valer:
>
> for i in `find /base/doc/* |grep "2005" |grep "\/05 |grep ventas*htm"
> `do cat $i|grep FILTRO; done
>
> en FILTRO pones lo que necesites.
>
> el tema de filtrar el mes 05 habiendo año 2005 es complicado, no lo he
> probado pero supongo que se puede leer con "\/05"
>
> Ahora llámame chapucero..
>
> >
> > Saludos.
> >
> >
>
>
--
Clave pública pgp:
http://pgp.rediris.es:11371/pks/lookup?op=get&search=0xDF09C357
signature.asc
Description: This is a digitally signed message part

