Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Empaquetando un directorio
#2

Buenas!.

He creado un script de prueba que crea tres directorios y luego en cada directorio crea cinco archivos vacíos

Bash
  1. #!/bin/bash
  2.  
  3. for argumento in directorio{1..3}
  4. do
  5.     mkdir $argumento
  6.     cd $argumento
  7.     for argumento2 in archivo{1..5}
  8.     do
  9.         touch $argumento2
  10.     done
  11.     cd ..
  12. done


En el comando tar existe un modificador tal como este:
Cita:-d, --diff, --compare      encuentra las diferencias entre un archivo y el  sistema de ficheros

Creo un archivo empaquetado con la estructura de árbol de directorios y archivos creados con el script anterior. Y ahora comparo de esta forma
en el mismo directorio.

Bash
  1. tar dvf ejemplo.tar


Si en los archivos del sistema del directorio1 borro el archivo1 y comparo con el tar. La salida es como esta:
 
Cita:directorio1/
directorio1/archivo5
directorio1/archivo2
directorio1/archivo3
directorio1/archivo4
directorio1/archivo1
tar: directorio1/archivo1: Atención: No se puede efectuar stat: No existe el archivo o el directorio
directorio2/
directorio2/archivo5
directorio2/archivo2
directorio2/archivo3
directorio2/archivo4
directorio2/archivo1
directorio3/
directorio3/archivo5
directorio3/archivo2
directorio3/archivo3
directorio3/archivo4
directorio3/archivo1

Si por un casual se me ocurre crear de nuevo archivo1 en el sistema de archivos y vuelvo a comparar puede decirme algo como esto:
 
Cita:directorio1/archivo1: La fecha de modificación es distinta

Pero lo curioso del tema es que si me da por borrar archivos dentro del tar y comparar con los archivos del sistema, no muestra un mensaje como los anteriores.
En ese caso puede existir en el directorio de archivos del sistema, pero no existir dentro del propio archivo tar.

Si me da por crear en los archivos del sistema del directorio1 un archivo6, tampoco dice nada al comparar con el archivo tar.
Como si solo trabajase con lo que hay dentro del tar.

Cuando se compara los archivos del sistema con el tar con normalidad. Si todo va bien al final del test no suelta ni un Ok.
Solo la lista de archivos.

Saludos

“Nunca confíes en un ordenador que no puedas lanzar por la ventana” – Steve Wosniak


Mensajes en este tema
Empaquetando un directorio - por Shell - 31-12-2020, 00:44
RE: Empaquetando un directorio - por Shell - 01-01-2021, 23:43

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)