[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: Comprimir rutas completas




> -----Mensaje original-----
> De: Pedro Insua [mailto:pedroinsua@gmail.com]
> Enviado el: miércoles, 25 de marzo de 2009 13:35
> Para: debian-user-spanish@lists.debian.org
> Asunto: Re: Comprimir rutas completas
> 
> On Wed, Mar 25, 2009 at 12:12:49PM +0100, Gorka wrote:
> >
> >
> > > On Tue, Mar 24, 2009 at 11:14:38AM +0100, fernandojoseGmail wrote:
> > > > Gorka wrote:
> > > > > Hola. A ver si me explico correctamente.
> > > > >
> > > > > Quiero comprimir miles de archivos en rutas de carpetas
> realmente
> > > largas
> > > > > y complejas que contienen muchas otras carpetas y archivos que
> no
> > > quiero
> > > > > comprimir.
> > > > >
> > > > > Necesito que se comprima, además de cada archivo la ruta
> completa
> > > donde
> > > > > se encuentra, de forma que al final me quede un único ..tar.gz
> con
> > > sólo
> > > > > los archivos que necesito y no los demás.
> > >
> > > [...]
> > >
> > > > > ¿Cómo se puede hacer esto? Gracias.
> > > >
> > > > man tar
> > > > Mira la opción --exclude-from file
> > > >
> > > > Se me olvidaba...
> > > > Para generar el fichero puedes usar un find . -name "*" > fichero
> > > > y editarlo para eliminar los ficheros que quieres excluir.
> > >
> > > También debe emplear la opción -P o --absolute-names.
> >
> > Hola, Fernando, Pablo, ... y demás listeros.
> >
> > La opción '--exclude-from file' hace exactamente lo contrario de lo
> que
> > quiero, ya que excluye de la compresión las rutas que aparecen en
> file.
> > Lo que yo necesito sería precisamente '--include-from file', que no
> existe,
> > claro.
> >
> > Para simularla coloco en file las rutas opuestas, es decir, las que
> no
> > quiero conservar, pero esto supone que tengo que convertir este file
> > (resultado del ' find a -name "*" > file'):
> >
> > a
> > a/b
> > a/b/QUIERO1
> > a/b/c
> > a/b/c/QUIERO4
> > a/b/NOQUIERO3
> > a/b/d
> > a/b/d/e
> > a/b/d/e/f
> > a/b/d/e/f/NOQUIERO8
> > a/b/d/e/NOQUIERO7
> > a/b/d/e/QUIERO6
> > a/b/d/NOQUIERO5
> > a/b/QUIERO2
> >
> > manualmente en este otro (fijaos en que no es simplemente eliminar
> las
> > líneas con los archivos que quiero):
> >
> > a/b/NOQUIERO3
> > a/b/d/e/f
> > a/b/d/e/f/NOQUIERO8
> > a/b/d/e/NOQUIERO7
> > a/b/d/NOQUIERO5
> >
> > y tras hacer el ' tar -cvzf comp2.tar.gz a --exclude-from file' ya se
> me
> > queda con lo que quiero, que es:
> >
> > /a/b/QUIERO1
> > /a/b/QUIERO2
> > /a/b/c/QUIERO4
> > /a/b/d/e/QUIERO6
> >
> > Esta solución es válida, en el sentido de que soluciona el problema,
> pero me
> > pregunto si no habría una mejor.
> > Como podeís ver, es más fácil y menos arriesgado tener un fichero de
> rutas a
> > incluir, que uno de rutas a excluir.
> > La cosa se ve más clara cuando queremos comprimir miles de archivos y
> > descartar millones.
> >
> 
> Olá.
> 
>   A decir verdad, creo que no he entendido muy bien lo que quiere
>   decir.. pero por lo que imagino... usted quiere solamente 'QUIERO?'
>   no ?
> 
>   Como he dicho, no estoy seguro de lo que dice.. pero como yo lo veo
>   , lo que usted quiere es algo como:
> 
>   1) crear fichero con los archivos/directorios que quiere, es
> decir,pex:
> 
>      $ cat > ficheros.txt
>         /a/b/QUIERO1
> 	/a/b/QUIERO2
>         /a/b/c/QUIERO4
>         /a/b/d/e/QUIERO6
>         ^D
> 
>   2) ahora que ya lo tiene, utiliza el flag -T y :
> 
>      $ tar -cf backup.tar -T ficheros.txt
> 
> 
>   Así creará un tar con las rutas que ha puesto en 'ficheros.txt'
> 
>   Espero que le sirva de algo.
> 

Pues claro que me sirve de algo, concretamente para dos cosas; 

- Para solucionar definitivamente el problema con 'tar -cvzf comp2.tar.gz -T
ficheros_rutas_a_incluir'. Muchas gracias a ambos. 
- Y para recordar que he de repasar con más atención los man. Cuando leí esa
opción pensé que era sólo para descomprimir las rutas preferidas, no para
comprimir, voy a ver si puedo poner mi man en castellano, como veo que
tenéis, para no cometer más errores.

De nuevo gracias a todos.




Reply to: