GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo excluyo rutas absolutas para tar?

Para mí, lo siguiente funciona mejor:

tar xvf some.tar --transform 's?.*/??g'

--transform El argumento es una expresión regular de reemplazo para sed, a la que se alimenta cada ruta de archivo extraída. A diferencia de --strip-components , eliminará toda la información de la ruta, no solo el número fijo de componentes.


Si desea eliminar los primeros n componentes principales del nombre del archivo, necesita strip-components . Entonces, en su caso, en la extracción, haga

tar xvf tarname.tar --strip-components=2

La página man tiene una lista de tar Hay muchas opciones, incluida esta. Algunas versiones anteriores de tar usa --strip-path para esta operación en su lugar.


Estás usando incorrectamente el -C switch, que se utiliza para cambiar de directorio. Entonces, lo que debe hacer es:

tar -cf tarname.tar -C /www/path path/file1.txt path2/path3/file2.xls

o si quieres empaquetar todo bajo /www/path hacer:

tar -cf tarname.tar -C /www/path .

Puedes usar -C cambia varias veces.


Linux
  1. [Linux]:cómo excluir el directorio cuando se usa el comando de shell "tar"

  2. ¿Rutas absolutas/canónicas/relativas?

  3. Cómo excluir un directorio en find. dominio

  4. Cómo extraer el archivo filename.tar.gz

  5. Tar un directorio, pero no almacene rutas absolutas completas en el archivo

Cómo extraer (descomprimir) el archivo Tar Gz

Cómo extraer (descomprimir) el archivo tar.xz

Cómo crear un archivo Tar Gz

¿Cómo escapo espacios en rutas para Scp en Linux?

Cómo crear un archivo Tar gz

10 ejemplos de exclusión de Yum para omitir paquetes para la actualización de Yum de Linux (cómo excluir actualizaciones del kernel de Yum)