...making Linux just a little more fun!
Mulyadi Santosa [mulyadi.santosa at gmail.com]
Most CLI aficionados use this kind of construct when executing a command over "find" results:
$ find ~ -type f -exec du -k {} \;
Nothing is wrong with that, except that "du" is repeatedly called with single argument (that is the absolute path and the file name itself). Fortunately, there is a way to cut down the number of execution:
$ find ~ -type f -exec du -k {} +
Replacing ";" with "+" would make "find" to work like xargs does. Thus du -k will be examining the size of several files at once per iteration.
PS: Thanks to tuxradar.com for the knowledge!
-- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com
Thomas Adam [thomas.adam22 at gmail.com]
On Sun, Jan 31, 2010 at 04:39:55PM +0700, Mulyadi Santosa wrote:
> Most CLI aficionados use this kind of construct when executing a > command over "find" results: > > $ find ~ -type f -exec du -k {} \; > > Nothing is wrong with that, except that "du" is repeatedly called with > single argument (that is the absolute path and the file name itself). > Fortunately, there is a way to cut down the number of execution: > > $ find ~ -type f -exec du -k {} +
http://linuxgazette.net/111/tag/3.html
-- Thomas Adam
-- "It was the cruelest game I've ever played and it's played inside my head." -- "Hush The Warmth", Gorky's Zygotic Mynci.