Evaggelos Balaskas - System Engineer

The sky above the port was the color of television, tuned to a dead channel

Blog
Posts
Wiki
About
Contact
rss.png twitter linkedin github gitlab profile for ebal on Stack Exchange

ebalaskas: color daemon »
  -  
« ebalaskas: benchmark - find &...
Sep
30
2011
benchmark - find & delete
Posted by ebal at 11:12:33 in planet_ellak, planet_Sysadmin

I usually use find to search for files and analyze the output.

Reading the manual page i learned about nouser & nogroup test expressions.

So i’ve tried some test to find the quicker (or a better way) to remove files with find.

First, lets create a demo dir and a lot of files


# cp -ra /usr /usr.test
# chown -R 10101.10101 /usr.test

How many files do we have ?


# time find /usr.test/ -xdev | wc -l 
124298

real    0m0.575s
user    0m0.243s
sys 0m0.363s

Ok, 124.298 files are a lot!

If i want to delete the entire directory via rm, the running time will be:


# time rm -rf usr.test/

real    0m5.883s
user    0m0.287s
sys 0m5.063s

5.88 seconds !

A walk through entire tree path:


# time find /usr.test/ -xdev -nouser > /dev/null

real    0m6.480s
user    0m2.763s
sys 0m3.660s

6.48 secs. It’s faster to remove them!

We now have a base to compare our results.
We will try 3 methods:

a. -delete find option
b. -exec find option
c. xargs via pipe

First Method


# time find /usr.test/ -xdev -nouser -delete 

real    0m12.739s
user    0m2.826s
sys 0m9.513s

12.74 secs. Thats the twice amount of time

Second Method


# time find /usr.test -xdev -nouser -exec rm -rf {} ; 

real    0m6.307s
user    0m0.253s
sys 0m5.516s

6.3 secs. Same as rm (that was expected by the way).

Third Method


# time find /usr.test/ -xdev -nouser | xargs rm -rf

real    0m4.666s
user    0m1.117s
sys 0m3.426s

4.66 secs!

So xargs is the faster way for the above methods

  • 3 comments
ebalaskas: color daemon »
  -  
« ebalaskas: benchmark - find &...

Search

Admin area

  • Login

Categories

  • blog
  • wiki
  • pirsynd
  • midori
  • books
  • archlinux
  • movies
  • xfce
  • code
  • beer
  • planet_ellak
  • planet_Sysadmin
  • microblogging
  • UH572
  • KoboGlo
  • planet_fsfe

Archives

  • 2025
    • April
    • March
    • February
  • 2024
    • November
    • October
    • August
    • April
    • March
  • 2023
    • May
    • April
  • 2022
    • November
    • October
    • August
    • February
  • 2021
    • November
    • July
    • June
    • May
    • April
    • March
    • February
  • 2020
    • December
    • November
    • September
    • August
    • June
    • May
    • April
    • March
    • January
  • 2019
    • December
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2018
    • December
    • November
    • October
    • September
    • August
    • June
    • May
    • April
    • March
    • February
    • January
  • 2017
    • December
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2016
    • December
    • November
    • October
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2015
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • January
  • 2014
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2013
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2012
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2011
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2010
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
  • 2009
    • December
    • November
    • October
    • September
    • August
    • July
    • June
    • May
    • April
    • March
    • February
    • January
Ευάγγελος.Μπαλάσκας.gr

License GNU FDL 1.3 - CC BY-SA 3.0