Just
about everybody has tried, at one time or another, to empty their OS X
Trash and received an alert that the Trash couldn’t be emptied, usually
for an opaque reason that's not well explained. This can be incredibly
frustrating, especially if I'm not sure why it’s happening. Even if I
identify the problem, it’s not always easy or even possible to fix
without a lot of effort.
In this tutorial, I’ll look at several ways to force the Trash to
empty using the command line in Terminal. For users who are not
comfortable doing that, though, I’ll also use a dead simple app that
will get rid of any problem files or folders in the Trash. When we're
done, you'll be able to tackle any problem the OS X Trash throws your
way.
While most of this tutorial deals with Terminal commands to solve
Trash problems, Trash It! is a nice app for getting the same job done
without using the command line. If you're not comfortable in Terminal or
just don't want to go to the trouble of entering the individual
commands, Trash It! may be your solution, and we'll briefly walk through
it at the end.
Unlock Trash Files
Most of us have tried to empty our Trash, only to be brought up short
by a file that’s locked or in use. The first Terminal command to try
makes the Trash files editable, hopefully freeing them up to be deleted. I've got locked Trash files, but I don't know which they are.
I'll open Terminal, and get into the Trash directory by entering the following:
1
cd ~/.Trash
Once in the Trash, I'll paste the following into Terminal and hit ENTER:
1
chflags -R nouchg *
Now I'll try to empty the Trash from either the Dock or the Finder menu (Finder > Empty Trash). Unlock all of the Trash files in Terminal.
Remove All Trash Files in Terminal
If that didn’t work, we’re going to need to try a little harder. Again, change the directory to Trash using the cd command in Terminal from above. Then delete everything in Trash using this command:
1
rm -rf *
I’ll want to be absolutely sure I'm in my Trash directory for that
command, because it’s going to burn the fields and salt the earth,
taking all of my files with it. I don’t want to do that in a directory
that contains personal files or system files.
Tip: Really, rm -rf is serious business
and cause major problems if used improperly. You should only ever use
it if you know what they're doing and feel comfortable deleting the
files in the crosshairs.
Remove all files in the Trash directory.
To make sure I'm in the right directory before plunging ahead, I'll use the ls command. This will list everything in the current directory; I can match the file list against what’s in my Trash. List all files in Trash.
Tip: I can also get a complete file listing using the echo * command, but the output list doesn’t look as nice and isn’t as easily navigable as ls.
If I don’t want to worry about all of that changing directories
business and want to tell Terminal what directory to look into in the
same command as I remove the files, this is a good one:
1
rm -rf ~/.Trash/*
Specify the directory in the Terminal command.
Remove Just a Single File
It may only be a single file holding things up. If I can identify the
troublemaker, I don’t have to delete everything in the Trash directory
using the command line, just the file causing problems. From the Trash
directory in Terminal, I'll use the following command to remove a single
file, substituting the name of my file for the “FILE.DOC” placeholder.
1
rm FILE.DOC
Remove only the problem file keeping Trash from emptying.
Tip: Once I’ve identified the file jamming up Trash, I'll type rm into Terminal, but don’t hit ENTER yet. Then I'll drag the file into the Terminal window to get the filepath. Hitting ENTER now will delete the file completely. I don’t even need to use the cd command to get into the Trash directory first!
Drag the file onto the Terminal window to get the file's path and name.
Use a Third-Party App
Using Terminal commands can be scary. If you’re not used to working
with the command line, you have to be careful, because if you end up in
the wrong directory, you could delete a lot of good files that you
really need.
For users who aren’t comfortable taking Trash deletion into their own
hands with Terminal commands, the safety of a third-party application
may be what’s called for. Trash It! can pretty much clear anything out.
Launch Trash It! and select one of the two deletion options, Fast or Really Stuck. The best bet for a new user is to try Fast first, but if that doesn’t work, move on to Really Stuck. How stuck is your Trash?
Trash It asks for password authentication to move forward. It may
take Trash It! a few moments depending on how large of a job it’s
facing, so be patient. Authenticate with a password, and then give Trash It! a few moments to get the job done.
Final Thoughts
We tried out a handful of Terminal commands and even a third-party
app that should do the trick if the OS X Trash seems really stuck.
Hopefully next time you run into this common annoyance, you’ll be better
prepared to deal with it.
Always make sure you’re 100% comfortable deleting the files in your
Trash before you move forward with any of these methods. It could be
that a file is held up because it really is still in use and you don’t
want to lose it or that you’ve accidentally chucked into the Trash a
pile of system files necessary for OS X to function. You’ll want to be
aware of what you’re deleting and know in advance that you won’t be able
to recover anything removed using these methods.
Do you have another favorite app for getting rid of sticky Trash
files or know of other Terminal commands to remove or identify difficult
to delete files? Let us know in the comments!
Unknown
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation.
Medical Disclaimer
The information on this site is not intended or implied to be a substitute for professional medical advice, diagnosis or treatment. All content, including text, graphics, images and information, contained on or available through this web site is for general information purposes only. Krobknea makes no representation and assumes no responsibility for the accuracy of information contained on or available through this web site, and such information is subject to change without notice. You are encouraged to confirm any information obtained from or through this web site with other sources, and review all information regarding any medical condition or treatment with your physician. NEVER DISREGARD PROFESSIONAL MEDICAL ADVICE OR DELAY SEEKING MEDICAL TREATMENT BECAUSE OF SOMETHING YOU HAVE READ ON OR ACCESSED THROUGH THIS WEB SITE.