Scusa ma non ho capito se tu lo stai facendo così per una ragione particolare. Perché se non ci sono ragioni per farlo così basta
codice:
# diff -r dir1 dir2
e fa più o meno la stessa cosa.
Per ottenere l'output che vuoi tu basta fare una cosa del genere
codice:
#!/bin/bash

# nel caso dir1 e dir2 siano uguali diff non produce
# nessun output
if [ `diff -r dir1 dir2 | wc -l` -eq 0 ]; then
  echo "dir uguali"

else
  echo "dir diverse"

fi
La cosa cambia (e diventa parecchio intricata) se vuoi controllare che anche il contenuto dei file sia uguale.