Comprimir y descomprimir
* Ficheros tar
Empaquetar: tar -cvf archivo.tar /dir/a/comprimir/
Desempaquetar: tar -xvf archivo.tar
Ver contenido tar -tf archivo.tar
* Ficheros gz
Comprimir: gzip -9 fichero
Descomprimir: gzip -d fichero.gz
* Ficheros bz2
Comprimir: bzip fichero
Descomprimir: bzip2 -d fichero.bz2
gzip ó bzip2 sólo comprimen ficheros [no directorios, para eso existe tar].
Para comprimir y archivar al mismo tiempo hay que combinar el tar y el gzip
o el bzip2 de la siguiente manera:
* Ficheros tar.gz
Comprimir: tar -czfv archivo.tar.gz ficheros
Descomprimir: tar -xzvf archivo.tar.gz
Ver contenido: tar -tzf archivo.tar.gz
* Ficheros tar.bz2
Comprimir: tar -c ficheros | bzip2 > archivo.tar.bz2
Descomprimir: bzip2 -dc archivo.tar.bz2 | tar -xv
Ver contenido: bzip2 -dc archivo.tar.bz2 | tar -t
* Ficheros zip
Comprimir: zip archivo.zip ficheros
Descomprimir: unzip archivo.zip
Ver contenido: unzip -v archivo.zip
* Ficheros lha
Comprimir: lha -a archivo.lha ficheros
Descomprimir: lha -x archivo.lha
Ver contenido: lha -v archivo.lha
Ver contenido: lha -l archivo.lha
* Ficheros arj
Comprimir: arj a archivo.arj ficheros
Descomprimir: unarj archivo.arj
Descomprimir: arj -x archivo.arj
Ver contenido: arj -v archivo.arj
Ver contenido: arj -l archivo.arj
* Ficheros zoo
Comprimir: zoo a archivo.zoo ficheros
Descomprimir: zoo -x archivo.zoo
Ver contenido: zoo -L archivo.zoo
Ver contenido: zoo -v archivo.zoo
* Ficheros rar
Comprimir: rar -a archivo.rar ficheros
Descomprimir: rar -x archivo.rar
Ver contenido: rar -l archivo.rar
Ver contenido: rar -v archivo.rar
Más sobre comprimir y empaquetar
EMPAQUETANDO Y COMPRIMIENDO
Es muy común cuando navegamos en Internet descargar archivos zip, tar, o tar.gz, bzip, bz2 ... Pues bien con la shell puedes desempaquetar y descomprimir todos esos archivos.
EL EMPAQUETADOR UNIVERSAL: TAR
El comando tar es utilizado normalmente para empaquetar o desempaquetar ficheros, empaquetar significa guardar en un único fichero una lista de varios ficheros, o el contenido de todo un directorio (o varios
directorios). El formato del comando tar es:
tar [opciones] [fichero1][fichero2]...[ficheroN]
Donde es la lista de opciones y hasta es la lista de ficheros a añadir o
extraer del archivo.
En las opciones de tar hay algunas que son importantes para su uso :
c: Crea un nuevo archivo tar.
v: Modo verbose, quiere decir que mostrará por pantalla las operaciones que va realizando archivo por archivo, si no se pone esta opción ejecutará la acción pero en pantalla no veremos el proceso.
x: Extrae los archivos (Descomprime los ficheros que se encuentran dentro
del archivo tar).
t: Nos muestra el contenido del archivo tar. Esto es cuando tu deseas saber que es lo que contiene ese archivo sin necesidad de desempaquetarlo.
p: Mantiene los permisos originales de los archivos.
f: Cuando se usa con la opción -c, usa el nombre del archivo especificado para la creación del archivo tar; cuando se usa con la opción -x, retira del
archivo el archivo específico.
z: Comprime el archivo tar con gzip.
j: Comprime el archivo tar con bzip2.
Aqui algunos ejemplos :
$ tar cvf archivo.tar /etc
Empaquetará todos los ficheros de /etc en el fichero archivo.tar c le dice a tar que cree un nuevo fichero de archivo. La opción v fuerza a tar en el modo verbose, (osea mostrando en pantalla el progreso de la tarea que realiza, en este caso los nombres de los ficheros según se archivan).
La opción f le dice a tar que el siguiente argumento archivo.tar es el nombre del archivo a crear. El resto de los argumentos de tar son los nombres de ficheros y directorios a añadir al archivo.
$ tar xvf archivo.tar
Extraerá el fichero archivo.tar en el directorio actual.
Una de las ventajas que nos ofrece tar es que respeta la estructura de directorio existente en el momento de empaquetar, de forma que al desempaquetar se reproducirá como estaba originalmente.
Ten en cuenta que hasta ahorita solo hemos empaquetado, mas no comprimido.
Para poder empaquetar y comprimir se usa el siguiente comando :
$ tar czvf archivo.tar.gz /etc
Si queremos descomprimir igual que en la linea que desempaquetamos, solo que
ahora cambiamos la c por la x de extracción :
$tar xzvf archivo.tar.gz
Hay otro modo de compresión que es el formato bz2. Para comprimir y descomprimir es el mismo procedimiento que con gz, la única diferencia es que ya no va la letra z, sino la j.
Ejemplo :
Para poder empaquetar y comprimir se usa el siguiente comando :
$ tar cjvf archivo.tar.bz2 /etc
Si queremos descomprimir , las opciones son muy similares a la orden
anterior, solo que ahora le cambiamos la c por la x de extracción :
$tar xjvf archivo.tar.gz
Comprimiendo: GZIP
Hay una herramienta especializada en la compresión y descompresión, es la herramienta gzip
Normalmente, el fichero a comprimir se reemplaza por otro con la extensión.gz, manteniéndose los mismos permisos, propietarios y tiempos de modificación.
La cantidad de compresión obtenida depende de varios factores, típicamente, texto o código fuente se reduce en un porcentaje del 60 al 70%. Un fichero ya comprimido, como la mayoría de archivos gráficos (gif, jpg), difícilmente reducirán su tamaño.
$ gzip -9 archivo.tar
El resultado será archivo.tar.gz.
Para comprimir, puedes poner gzip -d y el nombre del archivo gz a
descomprimir
$ gzip -d archivo.tar.gz
En esta ocasión archivo.tar.gz será descomprimido y reemplazado por archivo.tar. Un equivalente a gzip -d es el comando gunzip :
$gunzip archivo.tar.gz
Ojo que puedes comprimir y descomprimir con esta herramienta , asi como con la poderosa herramienta tar, ambas tienen las mismas extensiones y son compatibles entre ambas. por ejemplo puedes comprimirlo con tar y descomprimirlo con gzip y viceversa. La diferencia esta en que tar también hace la función de empaquetado.
Extensiones ZIP
Comprimir y descomprimir los archivos zip, también es sencillo :
$zip -r documento.zip carpeta_o_archivo_a_comprimir
El parámetro r indica al comando zip que debe hacer una compresión de manera recursiva, en el caso de comprimir un directorio , comprime todo lo que hay en él.
unzip documento.zip
Esta línea descomprime el fichero zip , y deja todos los archivos contenidos en ella en la carpeta donde te encuentres en ese momento.
Hasta aquí lo relacionado con la compresión y empaquetamiento, ahora podrás hacer tus backups (copias de seguridad fácilmente), comprimir tus directorios y descomprimir toda la información que requieras con esta consola de comandos que se cada vez se te hace mas familiar :)