En esencia, un archivo tar es un método para crear un archivo que contiene muchos otros archivos.
Imagina que tienes una estructura de carpetas con archivos que deseas copiar de una computadora a otra. Podría escribir un script que realice la copia y coloque todos los archivos en las carpetas correctas en la máquina de destino.
Sería mucho más fácil si pudiera crear un solo archivo con todos los archivos y carpetas incorporados como parte del archivo que luego podría copiar en el destino y extraer.
Los usuarios que están acostumbrados a usar software de Windows como WinZip ya conocerán este tipo de funcionalidad, pero la diferencia entre un archivo zip y un archivo tar es que el archivo tar no está comprimido.
Es bastante común que un archivo tar se comprima como se muestra en la guía que muestra cómo extraer los archivos tar.gz.
Este artículo le mostrará cómo usar el comando tar.
Cómo crear un archivo tar
Imagina que la carpeta de imágenes en tu carpeta de inicio tiene muchas carpetas diferentes con muchas imágenes en cada carpeta.
Puede crear un archivo tar que contenga todas sus imágenes mientras mantiene la estructura de la carpeta con el siguiente comando:
tar -cvf fotos ~ / fotos
Los interruptores son los siguientes:
- -c = crear
- -v = verboso
- -f = archivos
Cómo listar los archivos en un archivo tar
Puede listar el contenido de un archivo tar usando el siguiente comando:
tar -tf nombre de archivo tar
Esto proporciona una lista de los archivos y carpetas dentro de un archivo tar. Siempre debes hacer esto antes de extraer un archivo tar de una fuente extraña.
Como mínimo, un archivo tar puede extraer archivos a carpetas que no esperaba y dañar partes de su sistema para saber qué archivos están yendo hacia dónde es un buen punto de partida.
En el peor de los casos, las personas malas crean algo llamado bomba de alquitrán que está diseñado para destruir su sistema.
El comando anterior simplemente da una lista de los archivos y carpetas. Si desea una vista más detallada que muestre los tamaños de los archivos, use el siguiente comando:
tar -tvf nombre de archivo tar
Los interruptores son los siguientes:
- -t = lista de contenidos de un archivo
- -f = archivo
- -v = verboso
Cómo extraer de un archivo tar
Ahora que ha enumerado los archivos en un archivo tar, es posible que desee extraer el archivo tar.
Para extraer el contenido de un archivo tar use el siguiente comando:
tar -xvf tarfile
Los interruptores son los siguientes:
- -x = extracto
- -v = verboso
- -f = archivo
Cómo anexar archivos a un archivo tar
Si desea agregar archivos a un archivo tar existente, ejecute el siguiente comando:
tar -rvf nombre de archivo tar / ruta / a / archivos
Los interruptores son los siguientes:
- -r = Anexar
- -v = detallado
- -f = Archivos
Cómo anexar archivos solo si son más nuevos
El problema con el comando anterior es que si agrega archivos que ya existen en el archivo tar, se sobrescribirían.
Si solo desea agregar archivos si son más nuevos que los archivos existentes, use el siguiente comando:
tar -uvf nombre de archivo tar / ruta / a / archivos
Cómo evitar que el alquitrán sobrescriba archivos mientras se extrae
Si está extrayendo un archivo tar, es posible que no desee sobrescribir los archivos si ya existen.
Este comando asegura que los archivos existentes queden solos:
tar -xkvf nombre de archivo tar
Sólo extraer archivos que son más nuevos que los archivos existentes
Si está extrayendo un archivo tar, puede que esté contento de que los archivos se sobrescriban, pero solo si el archivo en el archivo tar es más nuevo que el archivo existente.
El siguiente comando muestra cómo hacer esto:
tar --keep-newer-files -xvf nombre de archivo tar
Cómo eliminar archivos después de agregarlos a un archivo Tar
Un archivo tar permanece sin comprimir, por lo que si tiene un archivo de 400 gigabytes en un archivo tar, tendrá un archivo de 400 gigabytes en su ubicación original y un archivo tar con un archivo de 400 gigabytes.
Es posible que desee eliminar el archivo original cuando se agrega a un archivo tar.
El siguiente comando muestra cómo hacer esto:
tar --remove-files -cvf nombre de archivo tar / ruta / a / archivos
Comprimir un archivo Tar cuando lo creas
Para comprimir un archivo tar tan pronto como se crea, use el siguiente comando:
tar -cvfz nombre de archivo tar / ruta / a / archivos
Resumen
El comando tar tiene docenas de interruptores y se puede encontrar más información usando elhombre de alquitráncomando o ejecutandotar - ayuda.