Recibí un gran archivo .tar.gz de un cliente que contiene aproximadamente 800 mb de archivos de imagen (cuando no está comprimido). El ftp de nuestra empresa de alojamiento es muy lento, por lo que extraer todos los archivos localmente y enviarlos a través de ftp no es práctico. Pude ftp el archivo .tar.gz a nuestro sitio de alojamiento, pero cuando ingreso a mi directorio e intento usar descomprimir, me da este error:
[esthers@clients locations]$ unzip community_images.tar.gz
Archive: community_images.tar.gz
End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive.
note: community_images.tar.gz may be a plain executable, not an archive
unzip: cannot find zipfile directory in one of community_images.tar.gz or community_images.tar.gz.zip, and cannot find community_images.tar.gz.ZIP, period.
¿Qué comando necesito usar para extraer todos los archivos en un archivo .tar.gz?
tar -xf
sugerencia sería hacer una gran respuesta adicional.man tar
; busca la-C
opción. O tal vez vea la otra respuesta 😉Si desea que los archivos se extraigan a un destino particular, puede agregar Asegúrese de hacer primero el directorio, en este caso: ~ / Pictures / Community
-C /destination/path/
Ejemplo:
Puede memorizar fácilmente si se tiene en cuenta diciendo tar a e X del tracto un F ile
Nota: Recuerde que puede buscar dentro de las páginas man con
?
+ término para buscar, y luegon
yN
para ir a la instancia siguiente o anterior del término que está buscando.fuente
ps
).--directory="/home/emmys/Pictures/Community/"
(que creo que es más fácil de recordar que-C
).En algún momento
tar
se actualizó a descompresión automática. Todo lo que necesitas ahora es:Se aplica la misma explicación:
f
: Esta debe ser la última bandera del comando, y el alquitrán f ile debe ser inmediatamente después. Le dice a tar el nombre y la ruta del archivo comprimido.x
: e x tracto los archivos.Tenga en cuenta la falta de guión para las banderas de comando. Esto se debe a que la mayoría de las versiones de tar permiten las opciones de estilo gnu y bsd (de manera simplista, gnu requiere un guión, bsd no).
fuente
Recordar todas las banderas
tar
puede ser tedioso. Obligatorio XKCD:Por lo tanto, hice mi propio pequeño script en Python para hacer eso. Rápido, sucio,
cp
como en el uso:Úselo así:
Vea también un script similar para descomprimir archivos zip .
fuente
-caf
para crear según el nombre de archivo y-xf
para extraer (AFAIK funciona en cada tipo de tar).tar xf <file>
?Respuesta rápida:
[ NOTA ]:
-v
Lista detallada de archivos procesados.-z
Filtra el archivo a través de gzip.-f
Utilice el archivo de almacenamiento o el ARCHIVO del dispositivo.-x
Extraer archivos de un archivo.-j
bzip2.-xf
archive.tar # Extrae todos los archivos dearchive.tar
.fuente
En caso de que no pueda extraer el
.tar.gz
archivo usandoIntenta extraer usando
fuente
También puedes hacer esto en el primer paso:
Luego tienes el archivo: community_images.tar
El segundo paso sería:
Y se extraería el archivo * .tar.
fuente
tar xvf file.tar.gz
Cualquier versión remotamente moderna de tar debería detectar automáticamente que el archivo está comprimido y agregarle "z".
fuente