Linux FAQ: How do I delete files (remove files) on a Unix or Linux system?
rm command is used to remove files and directories. (As its name implies, this is a dangerous command, so be careful.)
Let's take a look at some
rm command examples, starting from easy examples to more complicated examples.
How to delete files with rm
In its most basic use, the
rm command can be used to remove one file, like this:
You can also use the
rm command to delete multiple Linux files at one time, like this:
rm file1 file2 file3
If you prefer to be careful when deleting files, use the
-i option with the
rm command. The
-i stands for "inquire", so when you use this option the
rm command prompts you with a yes/no prompt before actually deleting your files:
rm -i files file2 file3
How to delete directories with rm
To delete Linux directories with the
rm command, you have to specify the
-r option, like this:
rm -r OldDirectory
-r option means "recursive", and therefore this command recursively deletes all files and directories in the directory named OldDirectory.
As a warning, this command is obviously very dangerous, so be careful. Some people always add the inquire option when deleting directories, like this:
rm -ir OldDirectory
You can also delete multiple directories at one time, like this:
rm -r Directory1 Directory2 Directory3
How to use wildcards with rm
Unix and Linux systems have always supported wildcard characters, so in this case you can delete files and directories even faster. For instance, to delete all HTML files in the current directory, use this command:
Note that unlike DOS, you don't actually need the "." before the "html" in that command, so you can shorten the command like this:
Unix and Linux wildcard characters and commands don't care at all about "." characters and filename extensions, so the "." is not needed.
You can also use wildcard characters in the middle of a filename or at the end of the filename. Here's an example where I'm deleting all files in the current directory that begin with the string "index":
This command deletes files named index.html, index.php, and in general, any filename that begins with the character string "index".
You can also use wildcard characters like this to delete multiple files or directories:
That command deletes the files Chapter1.txt, Chapter2.txt, and Chapter3.txt, all in one command.
More Linux rm commands
There are probably many more Linux delete commands you can issue with the
rm command. For instance, you can delete files and directories that aren't in the current directory. Here's an example where I delete a file named foo.txt that's in the /tmp directory:
I hope these Linux
rm command examples have been helpful. As usual, if you have any questions, or other good
rm command examples, just leave a note in the Comments section below.