Permanently deleting files on Mac OS
Solution 1
I'm not so happy with the way Mac OS X handles this either. If I really want to delete something, especially from USB memory sticks, I usually fire up Terminal and rm
the files manually.
Solution 2
Since so many people seem to want it, I just created a Service to do this, for Snow Leopard, called Delete Immediately. It shows up in the Services menu and the context menu in Finder.
You can download it from GitHub. Uncompress the .zip
archive and move the resulting "Delete Immediately.service
" to the Services folder in your library folder, ~/Library/Services/
. You may need to log out and back in (and/or enable it in the Services section of the Keyboard preferences) for the system to recognize the service.
I'd also suggest checking out the README
file on the main page on GitHub. And if you want to contribute to the code, localize it, or make an icon, feel free!
Solution 3
The Terminal-less way of solving this conundrum is to cast the following spell to appease the Apple gods, like so :
Select the file to be sacrificed followed by reciting:
⌘ Delete
⌘ ⇧ ⌥ ⌫
This will send the file to Trash, and then delete the whole Trash, thus should send the victim (and all other trashed items) to oblivion.
Solution 4
To delete a specific file, without going through the trash..
- open a Terminal
- type
rm
(with a trailing space), orrm -r
if you plan to remove a directory - drag and drop the file onto the Terminal window, which enters the full path to the dropped file
- hit enter
jtbandes's "Delete Immediately" service solution is much more elegant, but the "Terminal way" doesn't require any additional software (so is good when working on machines that you don't regularly use)
Solution 5
I use rm -rf in the command line. It deletes a lot faster and it deletes everything. A common problem I have with Windows is that deleting is a process rather than a point in time and I often find myself watching Windows delete folders and files for several minutes. Rm -rf is quick.
You can also use rm -rf to delete a specific Trash. The trash can is a hidden folder named .Trash in the root of the relevant volume or directory.
And yes, I think this is how it should be. Users shouldn't be able to delete files too quickly using Finder. Files should be recoverable from the Trash.
Related videos on Youtube
Assaf Levy
I'm a software developer by profession, and more active on Stack Overflow. I used to be more of a Linux geek, wasting a lot of free time tweaking my system, following Slashdot, etc. Fortunately I'm mostly past that. :) Nowadays I mainly use Mac at home, while still strongly preferring Linux (Ubuntu these days) for development at work and at work too.
Updated on September 17, 2022Comments
-
Assaf Levy over 1 year
A while back, as relatively new Mac OS X user, I was surprised to learn that you cannot easily delete files. Directly, that is, without moving them to the trash first. On Windows and Linux this can obviously be done with ease, but not so on the Mac.
I noticed this when trying clear up files from a USB memory stick — removing the files ("move to trash") does not free up space; that happens only after emptying the whole system-wide Trash. Not particularly convenient! (It seems stupid to have to empty the whole trashcan just to make some space on the USB stick. There might be gigabytes of stuff in there, and this sort of defeats its purpose - what if you'd actually need to restore something from the trash some day.)
So, what's your way of getting around this? Have you bought a 3rd party application like RAW Trash for $16.95 just to delete files, or do you diligently empty the trashcan whenever needed? Or did I miss something? Also, can you convince me that this is actually the way it should be — that users shouldn't be able to fiddle with the filesystem easily? :)
-
Daniel over 5 yearsWere you looking for the shortcut
⌘+⌥+⌫
(Command+Option+Delete)?
-
-
Andrew J. Brehm almost 15 yearsNote that if space in the Trash is not counted as space used, files in the Trash will be overwritten over time and cannot be recovered any more. So the choice is really between keeping files in the Trash and suffering the space hit or not keeping files in the Trash and having more space available. Combinations between the two are unpredictable for a normal user.
-
Dennis Williamson almost 15 yearsrm -rf bin - oops I forgot to cd, but I'm not in / so not so big an oops. rm -rf /bin - oops I forgot to type . so BIG OOPS! (regardless of where I've cd'd to)! So I disagree.
-
avstrallen almost 15 years@Dennis - yep, if you forget to type the period you're in a world of pain! I guess this is the main reason Apple doesn't want their average user doing this kind of stuff, hence the Trash functionality the OP was taking issue with. So, I agree with your disagreement, but it sounds like you and I are experienced *nixers who respect the command shell as the potentially dangerous place we know it to be. I was only suggesting that less experienced users get into a habit of mind before using potentially dangerous commands.
-
Assaf Levy almost 15 yearsCool, thanks! Right now I cannot confirm if this works, but if so, it's exactly what I wanted :)
-
Assaf Levy almost 15 yearsThanks. I agree that it's easy enough to do it on command line. But in this case I don't especially like having to resort to that... On Mac OS, you're not supposed to have to use the command line for common, end-user kind-of things, IMHO, and freeing up space on a USB stick is a pretty common thing to do.
-
Daan almost 15 yearsWhat this does is first deleting the file, then emptying the trash. While its a useful keyboard shortcut, it doesn't really address the issue of being unable to easily delete selected files.
-
GeneQ almost 15 yearsAgreed Daan. It's not ideal. But using rm in the Terminal is also not an ideal and rather un-Mac way of doing things. Our friend Jonik will have to weight the pros and cons I guess. ;-)
-
avstrallen almost 15 yearsI agree with @GeneQ and @Daan - but I have a methodological workaround: I don't put anything in the Trash until I know for sure I'm done with it and then empty the Trash immediately every time... problem solved.
-
Assaf Levy almost 15 yearsThanks for the clarifying comments! So yeah, it's not exactly what I wanted after all, but good to know the shortcut for emptying trash. Out of the options presented so far, I'd probably go with rm on the command line, although I agree with GeneQ that it's a rather un-Mac way for a task like this.
-
Babu almost 15 yearsThis is good advice, but I think that it should be made extremely clear to the unwary/non-savvy that rm -rf needs to be used extremely carefully; it will erase everything in the folder you pass to it, including the folder, without confirmation. If a system folder is passed into this command, you can do enough damage to require you to reinstall the operating system (While the permissions should keep you from destroying the system, I tend to try not to rely on them).
-
dbr over 14 years-1 also, the original question mentions that emptying the system wide trash "Not particularly convenient!", which is what that shortcut does..
-
dbr over 14 yearsShiney. You can also bind a keyboard shortcut to this service: "In the Application menu choose Services/Services Preferences. Open System Preferences/Keyboard/Keyboard Shortcuts/Services. Select a service, press Enter and then press your chosen shortcut key combo" (from gingerbeardman.com/services )
-
Assaf Levy over 14 yearsVery nice, thanks! Does this only work on 10.6? (I'll still be on Leopard for a while.)
-
Assaf Levy over 14 years+1, thanks for the drag and drop onto Terminal tip
-
Assembler over 14 yearsIt does only work on 10.6 for now, I'm not as familiar with how Services work on 10.5 (they don't show up in the context menu, and writing a context menu plugin for 10.5 is a bit harder).
-
Assembler over 14 yearsAnd, Jonik, I'd really recommend you upgrade to 10.6 if your hardware allows (i.e. you have an Intel Mac). Even if you won't get many of the speed boosts if you don't have a 64-bit machine, like I don't, the minor refinements are definitely worth the low price.
-
Assaf Levy over 14 years[ Yes, I will upgrade, as soon as I get it. :) Just that I very recently bought a Mac mini, which still came with Leopard, and it probably takes a little while before I get Snow Leopard through apple.com/macosx/uptodate. Btw, I do hope some solution is found to this annoyance before I upgrade: superuser.com/questions/31925/… ]
-
Assaf Levy about 14 yearsFinally got round to testing this, and it indeed works smoothly! (So a big +1 from me too; I'll keep the
rm
method as accepted answer though, as installing 3rd party tools for this shouldn't be mandatory IMHO...) Your "Delete Immediately" might end up putting creators of RAW Trash out of business, you know. :D Assigning a keyboard shortcut for the service makes this even better. Some feedback about the instructions: 1) Services folder under ~/Library may not exist (didn't on my machine), so perhaps mention that you may need to create it. 2) Is there an easy way to install system-wide? -
Kaushik Gopal almost 13 yearsfor all the things that Mac OS X doesn't already provide, there's Keyboard Maestro.
-
haridsv over 12 yearsIs there a way to assign Shift+Del as shortcut to this service? It seems like System Preferences beeps at you for any combination that involves Del.
-
Andrew J. Brehm over 11 yearsWhy the down-vote???
-
Devarshi over 11 yearsThanks for the useful tip, based on your suggestion I have made a simple cocoa app, here is the link: daemonconstruction.blogspot.in/2013/01/…
-
Devarshi over 11 years@dbr.. thanks for informing me.. I have updated it now :-)
-
kentcdodds about 11 yearsGitHub changed their interface and I can't find the downloads tab. Could you put it somewhere else?
-
Assembler about 11 years@kentcdodds It's sad that GitHub killed the downloads tab! I added a zip file to the repository itself, so you should be able to directly download it from there. See the link on the wiki. Let me know if this works!
-
kentcdodds about 11 years@jtbandes I don't see any tar/zip files in the repository...
-
Assembler about 11 yearsIt's in the root directory, named
Delete Immediately.service.zip
. I put a link on the wiki page too. -
Tyler Collier over 10 yearsIf someone would kindly upvote this comment, I'll have enough reputation to add my own answer with screenshots. I'd like to recommend Trash Without, which is $0.99 but has convenient options like adding a button to Finder. See: itunes.apple.com/us/app/trash-without/…
-
Tyler Collier over 10 yearsI ended up adding my answer on the sister site here: apple.stackexchange.com/questions/43577/…