Cómo usar el comando Tar en Linux.
El comando Tar en Linux es uno de los más utilizados para comprimir archivos. Presenta varias ventajas y por eso los profesionales lo consideran de gran ayuda y lo usan a menudo. Te invitamos a conocer su funcionamiento y aprenderlo con el siguiente tutorial.
-c Crear un nuevo archivo .tar
-v Muestra una descripción detallada del progreso de la compresión
-f Nombre del archivo
-z Compresión gzip
-j Compresión bzip2
-C Extraer archivos en un directorio diferente
-x Extraer el archivo
-r Actualizar o agregar un archivo o directorio en un archivo .tar existente
Tar quiere decir “Tape Archive” en inglés, lo que en español significa “archivo de cinta de grabación”, y se usa para comprimir una colección de archivos y carpetas.
En la gran mayoría de los casos, cuando se lleva adelante la compresión usando Tar, se obtiene un archivo .tar. Si se hace una compresión adicional utilizando gzip, se conseguirá como resultado un archivo .tar.gz.
Con el comando Tar, podés comprimir y descomprimir archivos. Presenta múltiples y variadas opciones, aunque hay algunas en especial que quizás te convenga retener.
Tar, ostenta una relación de compresión del 50%, lo que significa que comprime eficientemente.
Disminuye radicalmente el tamaño de las carpetas y archivos comprimidos.
Tar en Linux no modifica las características de los archivos y directorios. Los permisos y otras particularidades permanecen intactos mientras se comprime.
El comando Tar se encuentra disponible en las versiones más comunes de Linux. También podés encontrarlo en el firmware de Android, así como en versiones compatibles de Linux más antiguas.
Comprime y descomprime velozmente.
Es muy sencillo de utilizar.
Descubramos qué operaciones básicas podés llevar adelante usando el comando Tar. Antes de iniciar, vas a necesitar SSH en tu servidor VPS. ¡Aquí te presentamos una guía paso a paso!
Podés crear compresiones .tar ya sea para un archivo como para directorios. Un ejemplo concreto de este tipo de archivo es:
tar -cvf sampleArchive.tar /home/sampleArchive
Aquí /home/sampleArchive es el directorio que requiere ser comprimido creando sampleArchive.tar.
Este comando utiliza las opciones –cvf cuyo significado es el siguiente:
c – crear un nuevo archivo .tar
v – muestra una descripción detallada del progreso de la compresión
f – nombre del archivo
Si querés lograr una compresión más completa, también podés elegir utilizar .tar.gz. Un ejemplo práctico para que te des cuenta es el siguiente:
tar -cvzf sampleArchive.tar.gz /home/sampleArchive
La opción adicional z representa la compresión gzip. Alternativamente, podés crear un archivo .tgz que sea parecido a tar.gz. Te graficamos un ejemplo de esto último a continuación:
tar -cvzf sampleArchive.tgz /home/sampleArchive
El archivo .bz2 ofrece más compresión comparado con gzip. No obstante, esta opción llevará mayor cantidad de tiempo para comprimir y descomprimir. Para utilizarla, tenés que usar la opción -j. A continuación, te mostramos un ejemplo de cómo se vería la operación:
tar -cvjf sampleArchive.tar.bz2 /home/sampleArchive
Esta operación es parecida a .tar.tbz o .tar.tb2. Te graficamos un ejemplo a continuación:tar -cvjf sampleArchive.tar.tbz /home/sampleArchive
tar -cvjf sampleArchive.tar.tb2 /home/sampleArchive
El comando Tar de Linux también se puede usar para extraer un archivo. El siguiente comando extraerá los archivos en el directorio actual:
tar -xvf sampleArchive.tar
Si querés extraer tus archivos a un directorio diferente, podés utilizar la opción -C. Fijate en el ejemplo de esto a continuación:
tar -xvf sampleArchive.tar -C /home/ExtractedFiles/
Podés utilizar un comando parecido para descomprimir archivos .tar.gz, tal como podemos observar a continuación en el ejemplo:
tar -xvf sampleArchive.tar.gz
tar -xvf sampleArchive.tar.gz -C /home/ExtractedFiles/
Los archivos .tar.bz2 o .tar.tbz o .tar.tb2 pueden descomprimirse de manera parecida. Para esto tendrás que teclear el siguiente comando en la línea de comando:
tar -xvf sampleArchive.tar.bz2
Cuando ya hayas creado el archivo, podés listar el contenido utilizando un comando parecido al que ves a continuación:
tar -tvf sampleArchive.tar
Esto mostrará la lista completa de archivos junto con las marcas de tiempo y los permisos. De la misma manera, para .tar.gz, podés utilizar un comando como:tar -tvf sampleArchive.tar.gz
Esto también podría funcionar para archivos .tar.bz2 como se observa a continuación:tar -tvf sampleArchive.tar.bz2
Una vez que creaste un archivo comprimido, tenés la posibilidad de extraer un único archivo de ese comprimido. Esto lo podés hacer con el comando que te graficamos a continuación:
tar -xvf sampleArchive.tar example.sh
Aquí example.sh es un archivo único que se extraerá del comprimido sampleArchive.tar. Alternativamente, también podés usar el siguiente comando:tar --extract --file= sampleArchive.tar example.sh
Para extraer un solo archivo de un comprimido .tar.gz podés utilizar un comando parecido al que ves a continuación:
tar -zxvf sampleArchive.tar.gz example.sh
Si tu intención es extraer varios archivos, te conviene utilizar el siguiente formato del comando:
tar -xvf sampleArchive.tar "file1" "file2"
Para .tar.gz podés elegir:
tar -zxvf sampleArchive.tar.gz "file1" "file2"
Para .tar.bz2 podés utilizar:
tar -jxvf sampleArchive.tar.bz2 "file1" "file2"
Si querés extraer del comprimido patrones específicos de archivos como por ejemplo únicamente los .jpg, utilizá el comando wildcards. Aquí va un ejemplo de este comando:
tar -xvf sampleArchive.tar --wildcards '*.jpg'
Para .tar.gz podés utilizar:
tar -zxvf sampleArchive.tar.gz --wildcards '*.jpg'
Para .tar.bz2 podés optar:
tar -jxvf sampleArchive.tar.bz2 --wildcards '*.jpg
'Si bien podés extraer archivos específicos, también podés agregar archivos nuevos a un archivo comprimido existente. Para poder realizarlo, tenés que usar la opción -r que significa agregar. El comando Tar puede agregar tanto archivos como directorios.
Aquí podés observar un ejemplo en el que estamos agregando example.jpg al sampleArchive.tar existente.
tar -rvf sampleArchive.tar example.jpg
También se permite agregar un directorio. En el ejemplo que ves a continuación, el directorio image_dir se agrega al archivo sampleArchive.tar
tar -rvf sampleArchive.tar image_dir
Tené en cuenta que no es posible agregar archivos o carpetas a comprimidos .tar.gz o .tar.bz2.
Anterior
Guía de Bash Script (con ejemplos)
Próximo
Cómo usar el comando Grep + Ejemplos útiles de Grep
Última actualización 1yr ago