Linux: How To Empty a Directory

By -

How do I empty a directory (delete all files) under Linux / Unix without deleting directory itself?

You can use the following commands:

[a] rm command – Delete one or more files or directories.

[b] find command – Find and delete all files from a specific directory.

Linux Empty Directory Using the rm Command

Consider the following directory structure:

	/tmp/
	|
	|------foo/
		|---file1
		|---file2
		|---file3

To delete all files from /tmp/foo/ directory (i.e. empty /tmp/foo/ directory), enter:
cd /tmp/foo/
$ rm *

OR
rm /tmp/foo/*

Delete All Files Using the Find Command

Consider the following directory structure:

	/tmp/
	|
	|------bar/
		|
		|---file1.txt
		|---file2.txt
		|
		|---subdir1/
		|	|---file1.doc
		|	|---file2.doc
		|
		|---subdir2/
			|---image1.jpg
			|---image2.png

To delete all files from /tmp/bar/ directory (including all files from subdirectories such as /tmp/bar/dir1), enter:
$ cd /tmp/bar/
$ find . -type f -delete

OR
find /tmp/bar/ -type f -delete

I have been working with Linux based systems since 2002. I hope the article published on this site will be useful to those new to server administration.