cc: star-discuss at opensolaris.org Subject: Re: Re: [shell-discuss] Re: About /usr/bin/find ... / was: Re:[star-discuss] Use of /usr/sfw --------
> I doubt that we will be able to find a single common piece of code for that > reason and there are more problems: find from libast is based on Glenn's > fts() > while libfind is based on my treewalk(). treewalk() behaves similar to nftw() > but avoids it's bugs that may still be seen in Sun's find(1). fts uses a > completely different approach.... > > I wrote the SVR4 nftw() function and the SVR4 find. However we found that nftw() had limitations that could not be resolved by enhancement so we instead created fts(). Keith Bostic also implemented most of fts() so there it has been in use for around 15 years and is pretty solid. One design goal that was met with fts(), which we could not do with nftw() was to implement every UNIX command that walks the file system with it. Command such as directory differencing could not be done with nftw() because you need to process two file hierarchies at a time. We came across a few surprises when we first tested our walk commands. For example, we created a directory tree with a depth of 2000. The standard rm -r command was unable to delete this. David Korn dgk at research.att.com