linux - subcarpetas - Cómo descomprimir gzip todos los archivos en todos los subdirectorios en un archivo comprimido en bash
descomprimir rar en linux (3)
La publicación de @amitchhajer funciona para GNU tar. Si alguien encuentra esta publicación y la necesita para trabajar en un sistema NON GNU
, puede hacer esto:
tar cvf - folderToCompress | gzip > compressFileName
Para expandir el archivo:
zcat compressFileName | tar xvf -
Posible duplicado:
compilando un conjunto de directorios y creando un archivo comprimido de alquitrán
Esta publicación describe cómo descomprimir gzip cada archivo individualmente dentro de una estructura de directorio. Sin embargo, necesito hacer algo ligeramente diferente. Necesito producir un gran archivo gzip para todos los archivos en un directorio determinado. También necesito poder especificar el nombre de archivo de salida para el archivo comprimido (p. Ej., Files.gz) y sobrescribir el archivo de archivo comprimido anterior, si ya existe uno.
hay muchos métodos de compresión que funcionan de manera recursiva y es bueno saber quién es el público final.
es decir, si se va a enviar a alguien que ejecute Windows, probablemente Zip sea lo mejor:
zip -r file.zip folder_to_zip
unzip filenname.zip
para otros usuarios de Linux o su auto alquitrán es genial
tar -cvzf filename.tar.gz folder
tar -cvjf filename.tar.bz2 folder # even more compression
#change the -c to -x to above to extract
Hay que tener cuidado con el alquitrán y cómo se van acumulando / extrayendo las cosas, por ejemplo si corro
cd ~
tar -cvzf passwd.tar.gz /etc/passwd
tar: Removing leading `/'' from member names
/etc/passwd
pwd
/ home / myusername
tar -xvzf passwd.tar.gz
esto creará / home / myusername / etc / passwd
No estoy seguro si todas las versiones de tar hacen esto:
Removing leading `/'' from member names
tar -zcvf compressFileName.tar.gz folderToCompress
todo en folderToCompress irá a compressFileName
Editar: después de la revisión y los comentarios me di cuenta de que las personas pueden confundirse con compressFileName sin una extensión. Si lo desea, puede usar la extensión .tar.gz (como se sugiere) con compressFileName