Quiero tar X directorio sin incluir sus padres

Quiero tar X directorio sin incluir sus padres
tar cvf /var/lib/backup/sample.tar /home/user/.project

Sin embargo, cuando extraigo, también obtengo sus padres.

/backup/
  - /home/
     - /user/
        - .project/

Este comando tar funciona porque no incluye nada más en sus carpetas principales (otras carpetas, userpor ejemplo).

Quiero hacer esto mediante programación, por lo que cambiar el directorio de trabajo actual /home/user/no es realmente una opción. ¿Es posible hacer eso?

Respuesta1

Puede usar la -Copción para cambiar al /home/userdirectorio antes de tarear o usarla --strip-components 2en la extracción.

tar cvfC /var/lib/backup/sample.tar /home/user .project
#                              Note the space ^
tar cvf /var/lib/backup/sample.tar /home/user/.project
tar Cxf /backup /var/lib/backup/sample.tar --strip-components 2

Respuesta2

Creo que si va cdal directorio de nivel superior en el que desea crear tarel archivo, no debería tener este problema. Es decir,

cdhacia usery hacia tararriba .project... puede especificar el destino del archivo tar como /var/... antes.

¿O hay alguna razón por la que no quieres o no cdpuedes user?

información relacionada