I am Hack Sparrow
Captain of the Internets.

How to Delete Directories Even if They Are Not Empty in Linux

Recursively deleting a directory forcibly in Linux

You probably know that rmdir is the bash shell command to delete directories in Linux. But the command will delete the directory only if it is empty.

$ rmdir boringpics
rmdir: boringpics/: Directory not empty

Would you need to traverse into a 10 level deep directory structure and delete the files in the subdirectories so that you can delete the top directory?. Can't there be a more intuitive way? The command below will delete the directory boringpics and its sub directories in a flash:

$ rm -rf boringpics

The -r option is used for recursing into the subdirectories. The -f forces the deletion of write protected files without prompting. If you are not sure about which files you want to delete, you might want to do someting like this:

$ rm -r boringpics

Did you notice that we used rm instead of rmdir to recursively delete a directory and its subdirectories? Looking strange? The use of rm for deleting a directory-as-we-know should come as no surprise because everything is a file in Linux - even you printer!


Make a Comment