I need to remove files and sub-directories in a particular folder but not that folder itself.
I am using below command:
find . -type d -depth -mtime +7 -exec rm -rf {} \;
But it throws following error message:
rm: refusing to remove ‘.’ or ‘..’ directory: skipping ‘.’
What should be the correct command I avoid or handle this error message? Is it happening because of option "-depth" in my find command?
Linux version:
NAME="Red Hat Enterprise Linux Server"
VERSION="7.1 (Maipo)"
Best Answer
If you have
/path/to/folder
, and would like to remove non-hidden files inside, but not that folder, just run:Note that this won't remove hidden files (ones starting with a dot).
And given that you have right permissions and don't need this folder on your system all the time, you can simply remove it and create a new empty folder: