Hello,
There were two approaches offered to my problem
1) changing my script: it runs if the "cd .." is moved from the end of
the script into the then clause of the if statement
===============
#! /bin/sh
echo Starting in `pwd`
for hoo in *; do
echo Found item $hoo
if [ -d "$hoo" ]; then
echo Pushing $hoo
cd $hoo
$0
cd ..
else
echo Processing file $hoo
fi
echo Going to next item
done
echo Finishing in `pwd`
# cd .. was here in original script
===============
I shall be bold: this strikes me as a bug in bash. Am I off my nut here?
2) use find instead for the traversing of the file hierarchy
===============
find $PWD -type f -execdir processingscript {} \;
===============
I have tried both methods and on a small sample (10,000 files going only
3 deep) and there were no meaningful differences in execution time.
Thanks to all
Bernard Higonnet
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"