===== Comprensión con tar: Ficheros ocultos y uso de wildcards en Bash / SH ===== Es común encontrarse con copias de seguridad o simplemente directorios comprimidos con tar de forma equivocada. Dependiendo de como se ejecute el comando tar, es factible que los ficheros ocultos no sean incluidos. En algunos casos incluso se incluyen los directorios superiores (sin contenido) que están por encima de la carpeta que se quiere comprimir. Para evitar este tipo de problemas se puede usar la opción "-C" Se van a tratar a continuación una serie de ejemplos prácticos de uso de tar para entender su funcionamiento correctamente. **Rutas para los ejemplos**: "///var/www/blog1/uploads//" y "///var/www/blog2///". # Comprime el directorio www pero como subcarpeta de /var. Al descomprimir se obtendrá "var/www/blog1". # Los ficheros y directorios que "/var/www/" pudieran contener además de "blog1" son ignorados (blog2). # Al descomprimir, "var/www/blog1/" no incluirá ficheros ocultos. tar cvpzf /opt/Blog_backups/WP_Backup.tar.gz /var/www/blog1/* # Comprime únicamente el directorio "www" y todo lo que le proceda (blog1 y blog2). # Al descomprimir veremos "www/" y todo su contenido, ficheros ocultos incluidos. cd /var/ && tar cvpzf /opt/Blog_backups/WP_Backup.tar.gz www # Comprime únicamente el contenido del directorio "www", ficheros ocultos incluidos. # Al descomprimir no habrá ningún directorio www/, solo dos directorios: "blog1/" y "blog2/". tar cvpzf /opt/Blog_backups/WP_Backup.tar.gz -C /var/www/ . # Descomprimir un tar especificando un directorio destino. # "-p" se utiliza para mantener los permisos originales sobre los ficheros. descomprimidos. tar -xpvf /tmp/backup.tar -C $HOME/Backups_usuario/ # Modificar la opción de la shell que impide que "*" (por defecto) represente también a ficheros ocultos. # Al descomprimir WP_Backup.tar.gz, la subcarpeta uploads ("var/www/html/blog1/uploads/") incluirá los ficheros ocultos. shopt -s dotglob tar cvpzf /opt/Blog_backups/WP_Backup.tar.gz /var/www/html/blog1/uploads/* shopt -u dotglob. **Resumen / recomendaciones**. * No usar "*" si se quieren incluir ficheros ocultos. * Usar cd / No incluir rutas completas sin usar la opción "-C".