Archivo zip usando tar en un servidor Linux

Archivo zip usando tar en un servidor Linux

Estoy intentando crear un archivo zip a partir de algunos archivos, pero cuando lo extraigo solo obtengo 1 archivo.

tar cfvz test.zip file1.mp3 file2.mp3 file3.jpg

Y después de extraer test.zip solo obtengo un archivo de "prueba". El tamaño del zip está bien, simplemente no sé cómo hacer que esto funcione para que al extraer obtenga los mismos archivos: "archivo1.mp3 archivo2.mp3 archivo3.jpg"

Respuesta1

Esto funcionó para mí:

$ tar -czvf test.tar.gz ./file1 ./file2 ...

$ tar -tzf test.tar.gz
./file1
./file2

# to extract do:
$ tar -xzf test.tar.gz

Después de pasar fla opción, debe proporcionar el nombre del archivo que está creando.

Ah, y en caso de que estés usando zippara descomprimir el archivo, no obtendrás un directorio, sino un tarball. Tarball contiene todos tus archivos. Usar:

tar -xf test

Y deberías ver todos tus archivos.

Si quisieras tenernormalzip, utilice zipel comando en lugar de tar/ gztandem. También es una buena práctica agregar el sufijo de archivo correcto:

  • tar con gzip (es decir tar czvf ...): nombre de archivo.tar.gz
  • tar con bzip2 (es decir tar cjvf ...): nombre de archivo.tar.bz2
  • tar sin compresión (es decir tar cvf ...): nombre de archivo.tar

Respuesta2

Primero, incluso si le ha dado a su archivo comprimido el nombre .zip, no es un archivo ZIP sino un archivo TAR y GZIP, por lo que la extensión de archivo correcta sería .tar.gzo .tgz.

Ahora, ¿cuál es el comando que usaste para extraer el archivo comprimido? Si utilizó utilidades ZIP, es posible que la extensión lo haya confundido y solo haya descomprimido el archivo sin descomprimirlo. Eso explicaría por qué el resultado es un único archivo, que en realidad es un archivo TAR. Si utiliza una utilidad untar (o el comando tar -xf test), debería recuperar todo su archivo desde dentro.

Respuesta3

Para extraer los archivos debes hacer

tar xvfz test.zip 

y de forma predeterminada, todos los archivos aparecerán en la ruta relativa a donde se encuentra, por lo que si test.zip contenía myfile.txt dir1/myfile.txt, ambos archivos aparecerían en el zip.

información relacionada