Ciao, ho un problemino con la seguente funzione ricorsiva:
function CRCmaker
{
cd $1
md5sum *.class >> $CRCFILE 2>/dev/null
for i in *; do
if [ "$i" != "." -a "$i" != ".." ]; then
echo "Leggo $i"
if [ -d $i ]; then
CRCmaker $i
fi
fi
done
}
Il mio problema è che la funzione non gestisce il ritorno, ovvero se il una directory trova più di una sub-directory la funzione entra solo nella prima, mi spiego meglio; immaginando di avere il seguente albero:
MAINDIR
----SUBDIR_1
----------SUBDIR_1_1
----------SUBDIR_1_2
-----SUBDIR_2
la funzione entra in MAINDIR, entra in SUBDIR_1 ed entra in SUBDIR_1_1 ma una volta visitata questa directory termina, ovvero non risale di un livello per visitare SUBDIR_1_2 e non risale al livello superiore per visitare SUBDIR_2.
Qualcuno sa spiegarmi come mai non risale di un livello? ho tralasciato qualcosa?
Grazie in anticipo