Obtener el checksum del directorio, excluyendo un directorio hijo en particular en Bash.
Supongamos que tienes una estructura de carpetas:
some_dir/a.txt
some_dir/b.txt
some_dir/c/d.txt
some_dir/.e/f.txt
some_dir/.e/g.txt
¿Cómo se podría obtener el checksum (por ejemplo, md5sum o sha256) de:
some_dir/a.txt
some_dir/b.txt
some_dir/c/d.txt
Excluyendo todos los contenidos en some_dir/.e/
en el cálculo del checksum?
davy.ai
Para obtener el checksum de los archivos especificados, excluyendo el contenido de
some_dir/.e/
, puedes utilizar el siguiente comando en Bash:Este comando utiliza el comando
find
para buscar todos los archivos regulares (-type f
) en el directorio especificado (some_dir
), excluyendo cualquier archivo que se encuentre bajo el directoriosome_dir/.e/
(! -path "some_dir/.e/*"
). Luego se utiliza el comandomd5sum
para calcular el checksum de cada uno de los archivos encontrados, y la salida se ordena (| sort
).Puedes reemplazar
md5sum
con cualquier otra herramienta de checksum (comosha256sum
) para calcular un tipo de checksum diferente.