Respuestas:
Tar es la herramienta de archivo y gzip es la herramienta de compresión. Para comprimir un directorio completo, primero debe archivarlo en un solo archivo. De eso se trata el alquitrán. y luego comprimes el archivo archivado. Puede realizar ambas tareas en un solo comando tar con la opción adecuada.
tar -czf nombre_carpeta.tar.gz nombre_carpeta /
Si no desea crear un archivo tar (puede ser que desee comprimir solo un archivo), puede usar el comando gzip directamente.
gzip file.txt
Creará un archivo comprimido llamado file.txt.gz
-czf
posteriores tar
: c
indica que desea crear un archivo tar, se z
aplica gzip
en el archivo tar intermedio y f
es para el nombre de archivo final posterior folder_name.tar.gz
.
gzip file.txt
reemplaza el archivo original.
gzip -k file.txt
para "mantener" (no eliminar) el archivo de entrada.
Si alguien todavía encuentra esta pregunta cuando busca "gzip en Mac", escribí una guía que puede ser útil para otra persona. Aquí va:
El comando más básico comprimirá el archivo filename.ext
y luego lo reemplazará filename.ext.gz
en el mismo directorio.
gzip filename.ext
Si no desea perder su archivo original, debe canalizar la salida gzip -c
a un archivo.
gzip -c filename.ext > anotherfile.gz
También podemos comprimir desde la entrada estándar, por lo que podemos comprimir la salida de otros comandos.
cat filename.ext | gzip > anotherfile.gz
OS X también viene con los comandos compress
y uncompress
. Hacen un gzip "más inteligente", ya que no comprime el archivo si creciera después del proceso de compresión. El siguiente comando reemplaza filename.ext
con filename.ext.Z
en el mismo directorio.
compress filename.ext
Para restaurar un archivo a su estado natural sin comprimir, puede usar gzip u otro de los contenedores. El modo de descompresión de gzip se llama con la -d
bandera. Este modo reemplazará el archivo filename.ext.gz
con filename.ext
en el mismo directorio. También hay un atajo llamado gunzip
que hará lo mismo.
gzip -d filename.ext.gz
gunzip filename.ext.gz
También podemos canalizar el archivo descomprimido a la salida estándar para guardarlo en otro archivo.
gzip -cd filename.ext.gz > anotherfile
gunzip -c filename.ext.gz > anotherfile
Otra forma rápida de leer el contenido de un gzip en la salida estándar es zcat
, básicamente, es lo mismo que llamar, gzip -cd
pero puede llamar a varios archivos y hacer que se concatenen de la misma manera que el cat
comando concatena archivos de texto. El único inconveniente es que sus archivos deben tener el sufijo con el .Z
sufijo para que funcione ...
zcat filename.ext.Z
zcat file_a.Z file_b.Z file_c.Z
Pero no temas! zcat
sigue siendo útil porque puede descomprimirse de la salida estándar. Por lo tanto, básicamente puede canalizar sus archivos a zcat para descomprimirlos en la ventana de terminal.
cat filename.ext.gz | zcat
Esto es muy útil si necesita verificar el contenido de un archivo realmente rápido, e incluso puede guardar la salida de zcat en un archivo, de la misma manera.
cat filename.ext.gz | zcat > anotherfile
El uncompress
contenedor funciona como gzip -cd
pero busca archivos con la extensión .Z para reemplazarlos en el directorio actual, por lo que solo necesita especificar el nombre del archivo que desea restaurar, pero está bien si lo llama con la extensión .Z, como el programa lo ignorará.
compress filename.ext
uncompress filename.ext
Espero que encuentre útil mi guía :)
Sí, primero debe hacer el directorio tar. El comando tar puede hacer ambas cosas:
tar -czf archiv.tar.gz mydir/
extraer su archivo:
tar -xzf archiv.tar.gz
Para agregar a la respuesta de @taskinoor: si usa la versión de un solo archivo, también conocido como
gzip file.txt
tenga en cuenta que el archivo original (file.txt) se eliminará y solo tendrá file.txt.gz
Pondría esto como comentario pero no tengo suficiente karma para hacer eso: =)
gzip --keep file.txt
mantendrá el original y creará file.txt.gz
. Ver gzip --help
.
Si eso es correcto. gzip
solo puede comprimir un archivo. tar
codifica el contenido del directorio en un único archivo, que puede ser comprimido adicionalmente utilizando gzip
, bzip2
, lzma
o cualquier otra cosa.
objective-c
pero estás preguntando sobre la línea de comandos.