Comparar dos directorios en Bash

Aquí dejo un script en Bash para comparar dos directorios fichero a fichero, todos los ficheros o en base a un patrón. Yo lo tengo nombrado cono dirdiff.sh pero podéis llamarlo como queráis. Si hacéis modificaciones o mejoras os agradecería que escribierais un comentario.

#!/bin/bash

# Mirar si hay los parametros necesarios
if [ $# -lt 2 ]
then
  echo "Uso: dirdiff directorio1 directorio2 [patron]"
  echo "     dirdiff dir1 dir2 *html"
  echo " "
  exit -1
fi

# por defecto comparar todo
cr='*'
# Si hay un tercer parametro usarlo como patronn
if [ -z $3 ];
then
   cr=$3; # nuevo patron
fi

for f in $(find $1/$3 -type f | sed "s|$1/||")
do
  printf "===!%-76s" "$f!" | tr ' !' '= '
  echo
  diff $1/$f $2/$f | sed -e "s/^/$2: /"
done

Articulos similares: