Extraer archivos tar a un directorio especĂ­fico en Linux

La utilidad tar es una utilidad que nos sirve para crear respaldos en cualquier sistema Linux, incluye muchas opciones las cuales debemos especificar segĂşn lo que queramos hacer.

Algo que se debe saber, es que se puede extraer un archivo con extensiĂłn .tar a un directorio cualquiera, siempre y cuando especifiquemos dicho directorio, no necesariamente en nuestro directorio actual.

Aqui en el siguiente ejemplo, tenemos la sintaxis para extraer un archivo

# tar -xf nombre_archivo.tar -C /ruta_del_archivo/carpeta
# tar -xf nombre_archivo.tar.gz --directory /ruta_del_archivo/carpeta

NOTA: En la primera sintaxis, la -C es para especificar que se está trabajando en otro directorio distinto al actual, es decir, cuando vamos a cambiar el directorio o carpeta.

A continuaciĂłn se muestran unos ejemplos donde esto se puede explicar mejor:

Ejemplo 1: Extraer archivos .tar

Vamos a extraer los archivos de articulo.tar a un directorio /tmp/mi_articulo. Algo que es muy importante, es que te asegures que el directorio o carpeta destino existe antes de extraer el .tar

Vamos a crear la carpeta destino con el siguiente comando:dire

# mkdir /tmp/mi_articulo

Ahora, para extraer los archivos de articulo.tar a /tmp/mi_articulo ejecutmos lo siguiente:

# tar -xvf articulo.tar -C /tmp/mi_articulo/

Tambien se puede usar –directory en lugar de -C, tienen exactamente la misma función

Ejemplo 2: Extraer archivos .tar.gz y .tgz

Al igual que en el ejemplo anterior, debemos asegurarnos que la carpeta destino existe usando:

# mkdir /tmp/tgz

Ahora vamos a extraer documentos.tgz a la carpeta que creamos anteriormente

# tar -zvxf documentos.tgz -C /tmp/tgz/

También se puede usar de esta manera (hace exactamente lo mismo)

# tar -zvxf documentos.tgz --directory /tmp/tgz/

Ejemplo 3: Extraer archivos tar.bz2, tar.bz, .tbz o .tbz2 a otro directorio

Una vez mas, nos aseguramos que la carpeta destino existe usando:

# mkdir /tmp/tar-bz

Y descomprimimos el archivo llamado documentos.tbz2 en la carpeta antes creada

# tar -jvxf documentos.tbz2 -C /tmp/tar-bz

Ejemplo 4: Extraer una o varias carpetas especĂ­ficas dentro del archivo .tar a un directorio especĂ­fico

Algo que también podemos hacer con tar, es extraer una parte específica del archivo que estamos descomprimiendo, sin necesidad de extraer todo el contenido.

En este caso el archivo se llama etc.tar y la carpeta destino /tar-especifico

Una vez mas, nos aseguramos que la carpeta destino existe usando:

# mkdir /tmp/tar-especifico
# tar -xvf etc.tar etc/asuntos/ etc/contenido.odt etc/mysql/ -C /tmp/tar-especifico