Este artículo explica cómo crear y extraer archivos en Linux® usando varios métodos.
En esta era digital, comúnmente enviamos datos a través de Internet, especialmente para la distribución de datos. Cuando necesitamos enviar grandes cantidades de datos, a menudo necesitamos enviarlos todos a la vez.
Por lo tanto, necesitamos una forma de enviar múltiples archivos, documentos o imágenes dentro de un solo archivo. No solo eso, sino que necesitamos una manera de entregar los datos de manera eficiente y sin atascar el ancho de banda en el proceso. Por lo tanto, surgieron métodos para comprimir datos antes de enviarlos. Debido a que los archivos comprimidos son más pequeños, estos métodos nos permiten enviar archivos más rápidamente. El tamaño más pequeño también ahorra espacio en los discos duros.
La compresión de datos y Linux ciertamente no son extraños. Si alguna vez ha notado el .xyz al final de un paquete que ha instalado desde un repositorio de Linux, habrá visto un ejemplo de compresión de datos de Linux.
Si bien existen varios métodos de compresión de datos disponibles, los más comunes en Linux son:
- Archivos .zip
- archivos .tar
- Archivos .tar.gz
- Archivos .tar.bz2
zip
Este método en particular es probablemente el más conocido y el más utilizado cuando se trata de archivar o comprimir archivos en la actualidad. El hecho de que sea accesible entre plataformas le da a este método una ventaja sobre los demás. Puede acceder y abrir un archivo zip independientemente del sistema operativo porque Linux, Windows® y MacOS® admiten archivos zip de manera predeterminada.
El siguiente ejemplo muestra la sintaxis básica para comprimir un archivo con zip:
$ zip -r <name of the zip file>.zip <directory or file(s) you want to compress>
También puede comprimir directorios. Los siguientes ejemplos le muestran cómo crear un archivo zip con el archivo, example.txt y otro archivo zip con el directorio, Imágenes :
$ zip examples.zip example.txt
$ zip -r pictures.zip /home/user/Pictures/
Ambos comandos crean un .zip comprimido expediente. El -r
La opción le permite incluir recursivamente todos los archivos y subdirectorios dentro de las Imágenes directorio en el archivo comprimido. Si bien no necesita el interruptor recursivo para archivos individuales, lo necesita para un directorio. El -r
se asegura de incluir todo lo que se encuentra dentro de ese directorio en el .zip resultante archivo.
Puede excluir algunos de los archivos dentro del directorio que planea archivar. Suponga que desea comprimir las Imágenes directorio, pero solo desea incluir archivos .jpg.
Después de cambiar el directorio a Imágenes , ingrese el siguiente comando:
$ zip -r pictures.zip ‘*.jpg’
Este comando busca Imágenes , excluye todos los archivos que no son jpg y comprime solo el .jpg archivos en imágenes.zip .Este concepto funciona con cualquier formato de archivo (.txt, .doc, etc.).
Si recibe un archivo comprimido (.zip ), use el siguiente comando para descomprimir ese archivo en Linux:
$ unzip pictures.zip
¿Qué sucede si desea descomprimir el archivo en su directorio de imágenes y actualmente se encuentra en un directorio diferente? Use el siguiente comando:
$ unzip pictures.zip -d /home/user/Pictures
Todos los archivos contenidos en el archivo zip se extraen al directorio de su elección cuando agrega la opción -doption. De lo contrario, unzip
extrae los archivos en su directorio actual de forma predeterminada.
alquitrán
tar
el comando no comprime .tar archivos tar
simplemente agrupa los archivos en un solo archivo archivado. Por lo tanto, si alguna vez ve un archivo que termina solo en '.tar', ya sabe que el proceso de archivado no aplicó compresión a los archivos contenidos en ese archivo.
El tar
El comando tiene algunas opciones más que el comando zip. Las opciones más utilizadas para el comando tar incluyen lo siguiente:
-c
:crea un nuevo .tar archivo de almacenamiento-v
:muestra detalladamente el proceso tar para que pueda ver todos los pasos del proceso-f
:especifica el tipo de nombre de archivo del archivo comprimido-x
:extrae archivos de un .tar existente archivo
El siguiente ejemplo muestra la sintaxis básica del tar
comando para crear un archivo:
$ tar -cvf <name of archive file>.tar <directory to archive or files to archive>
Use el siguiente comando para archivar las Imágenes directorio:
$ tar -cvf pictures.tar /home/user/Pictures
Para extraer un archivo de almacenamiento .tar preexistente, reemplace -c
con un -x
, como se muestra en el siguiente ejemplo:
$ tar -xvf <name of archive file>.tar
Como en el caso del unzip
comando, tar
extrae el .tar contenido a su ubicación actual, por defecto. Para extraer .tar contenido del archivo en otro lugar, use el siguiente comando:
$ tar -xvf (name of archive file).tar -C /path/to/desired/directory/location/
tar.gz
Tar.gz los archivos agregan compresión a la función de archivo del comando tar usando el gzip
función.
Solo necesita agregar -z
opción al tar
básico comando para agregar compresión, como se muestra en el siguiente ejemplo:
$ tar -zcvf <archive name>.tar.gz /directory/you/want/to/compress
OR
$ tar -zcvf <archive name>.tar.gz ‘*.jpg’
Al igual que con tar
, use '-c' para crear un archivo y '-x' para extraerlo, como se muestra en el siguiente ejemplo:
$ tar -zxvf <archive name>.tar.gz
OR
$ tar -zxvf <archive name>.tar.gz -C /path/to/desired/directory/
tar.bz2
Supongamos que tiene un directorio extra grande que desea comprimir tanto como sea posible. Si tar.gz da como resultado un archivo de gran tamaño, intente usar tar.bz2 en su lugar. Tenga en cuenta que esta opción tarda un poco más.
Este método de archivo agrega solo una nueva opción:-j
, como se muestra en el siguiente ejemplo:
$ tar -jcvf <archive name>.tar.bz2 /directory/to/compress
OR
$ tar -jcvf <archive name>.tar.bz2 ‘*.jpg’
De nuevo, para extraer un .tar.bz2 archivo, cambie -c
para -x
, como se muestra en los siguientes ejemplos:
$ tar -jxvf <archive name>.tar.bz2
OR
$ tar -jxvf <archive name>.tar.bz2 -C /directory/to/extract/to/
Conclusión
Ahora sabe cómo usar las herramientas de compresión de datos más comunes disponibles. Cada opción tiene su lugar.
- ¿Necesita enviar un archivo comprimido a alguien que usa un sistema operativo diferente al suyo? Prueba zip.
- ¿Le gustaría archivar algunos archivos, pero no necesita comprimirlos? Usa alquitrán.
- Quizás necesite comprimir los archivos después de todo. Utilice tar.gz.
- Finalmente, si desea que ese directorio sea lo más reducido posible, tiene .tar.bz2 a su disposición.
Con la experiencia, se sentirá cómodo con la herramienta que mejor se adapte a sus necesidades en un momento dado.