¿Cómo tarball un directorio sin cargar / ruta / a / carpeta?


15

Comando de ejemplo:
$ tar -cvjf destination.tar.bz2 /path/to/folder/source

Me gustaría que el final destination.tar.bz2, cuando se extraiga, no incluya un /path/to/folder/directorio de archivos. Parece ineficiente extraer el tarball y luego mover el contenido /path/to/folder/sourcea un directorio diferente.


Respuestas:


19

tar -C /path/to/folder -cvjf /path/for/acrhive.tar.bz2 source

-C (mayúscula) significa 'cambiar directorio', por lo que la especificación de su archivo se vuelve relativa a la ruta provista con -C


Tenga en cuenta que la ruta que proporciona para "fuente" es relativa a la "-C". Como, eso es lo que escribió @thinice, es solo que si todavía proporciona una ruta absoluta en lugar de relativa incluso cuando usa "-C", no obtiene el resultado deseado.
GuyPaddock

4

Hay muchas formas de lograrlo, pero esta es probablemente la más simple:

cd /path/to/folder
tar -cvjf /past/to/destination.tar.bz2 source
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.