On Mon, 19 Jun 2006, Eric Blake wrote: > According to Igor Peshansky on 6/19/2006 8:50 AM: > > > > Another note I wanted to make is that '-exec' is evil, and you almost > > never have a reason to use it for a final action of the find (pipe the > > output to xargs instead -- "man xargs" for details). > > - -execdir is safer than -exec. And by using the + instead of ; > operator to - -exec or -execdir, you can safely eliminate the xargs > process: 'find - -execdir echo {} +' is more efficient than 'find > -print | xargs echo'.
Right, but it requires a new version of find, and thus will be non-portable. Besides, the output is not the same -- "find . -type f -print | xargs echo" will print the files with paths relative to the current directory, and "find . -type f -execdir echo {} +" will print everything with "./" (ok for "rm", not so ok for "echo"). Plus, you can't do some other nifty things that xargs can do, e.g., limit the number of files passed to the command. Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ [EMAIL PROTECTED] | [EMAIL PROTECTED] ZZZzz /,`.-'`' -. ;-;;,_ Igor Peshansky, Ph.D. (name changed!) |,4- ) )-,_. ,\ ( `'-' old name: Igor Pechtchanski '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "Las! je suis sot... -Mais non, tu ne l'es pas, puisque tu t'en rends compte." "But no -- you are no fool; you call yourself a fool, there's proof enough in that!" -- Rostand, "Cyrano de Bergerac" -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/