root@babilon:/mnt/lfs/prova# more lista
/mnt/lfs/prova/prova/directory/archivio1
/mnt/lfs/prova/prova/directory/archivio2
/mnt/lfs/prova/prova/directory/archivio3
/mnt/lfs/prova/prova/cartellina
/mnt/lfs/prova/prova/directory
Con il seguente script non succede nulla.
Insomma non vengono riconosciuti link file e directory, così la script esce senza risultato.
- Codice: Seleziona tutto
remove=$(cat lista)
for arg in "$remove"; do
if [[ -h "$arg" ]]; then
find $arg -type l -print | xargs /bin/rm -vf
fi
if [[ -f "$arg" ]]; then
find $arg -type f -print | xargs /bin/rm -vf
fi
if [[ -d "$arg" ]]; then
find $arg -type d -print | xargs /bin/rmdir -v
fi
done
Altrimenti, eliminando le condizioni ed i test, funziona con l'inconveniente dei messaggi di ritorno di file inesistenti perchè già eliminati.
RIngrazio anticipatamente per i suggerimenti.

