Recursively Delete Files from Command Line

By  on  

I'm one of those people who can't stand a messy laptop;  I don't keep around files I don't need and I refuse to install apps unless I absolutely need them.  Unfortunately Mac OS X and Windows generate files whenever they like, like .DS_Store and Thumbs.db.  Sure they serve their purpose but that doesn't mean the clutter doesn't annoy me.

If you want to recursively find delete files you don't want, there's a simple way to do that:

find . -name '.DS_Store' -type f -delete

You can use * as a wildcard too:

find . -name '*.zip' -type f -delete

Of course my cleanup only lasts a short time, but hey -- you can use this command for more intelligent purposes!

Recent Features

  • By
    CSS vs. JS Animation: Which is Faster?

    How is it possible that JavaScript-based animation has secretly always been as fast — or faster — than CSS transitions? And, how is it possible that Adobe and Google consistently release media-rich mobile sites that rival the performance of native apps? This article serves as a point-by-point...

  • By
    CSS Gradients

    With CSS border-radius, I showed you how CSS can bridge the gap between design and development by adding rounded corners to elements.  CSS gradients are another step in that direction.  Now that CSS gradients are supported in Internet Explorer 8+, Firefox, Safari, and Chrome...

Incredible Demos

Discussion

  1. Tolga

    Interestingly. I only knew about -exec and xargs.

  2. Hristo
    rm find . -name '.DS_Store'
  3. I use Asepsis for .DS_Store files: http://asepsis.binaryage.com/

  4. Just to mention that the order of the -delete flag is very important. Putting -delete flag first will make find try to delete everything below the specified starting point.

  5. If you’re on Windows, the following will work the same:

    del /s .DS_Store
    del /s Thumbs.db
    
  6. Using -iname instead of -name will ignore case.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!