- How to Remove Files and Directories in Linux Command Line [Beginner’s Tutorial]
- How to delete files in Linux
- 1. Delete a single file
- 2. Force delete a file
- 3. Remove multiple files
- 4. Remove files interactively
- How to remove directories in Linux
- 1. Remove an empty directory
- 2. Remove directory with content
- 3. Force remove a directory and its content
- 4. Remove multiple directories
- Summary
- How to remove files and directories quickly via terminal (bash shell) [closed]
- 4 Answers 4
- How to Remove (Delete) a File or Directory in Linux
- How To Remove or Delete Linux Files
- rm Command Options
- How to Delete a Directory in Linux
- Remove Directory Linux with rm Command
- Remove Directories in Linux with rmdir Command
How to Remove Files and Directories in Linux Command Line [Beginner’s Tutorial]
Learn how to delete files and remove directories with rm command in Linux.
How to delete a file in Linux? How to delete a directory in Linux? Let’s see how to do both of these tasks with one magical command called rm.
How to delete files in Linux
Let me show you various cases of removing files.
1. Delete a single file
If you want to remove a single file, simply use the rm command with the file name. You may need to add the path if the file is not in your current directory.
If the file is write protected i.e. you don’t have write permission to the file, you’ll be asked to confirm the deletion of the write-protected file.
rm: remove write-protected regular file 'file.txt'?
You can type yes or y and press enter key to confirm the deletion. Read this article to know more about Linux file permissions.
2. Force delete a file
If you want to remove files without any prompts (like the one you saw above), you can use the force removal option -f.
3. Remove multiple files
To remove multiple files at once, you can provide all the filenames.
rm file1.txt file2.txt file3.txt
You can also use wildcard (*) and regex instead of providing all the files individually to the rm command. For example, if you want to remove all the files ending in .hpp in the current directory, you can use rm command in the following way:
4. Remove files interactively
Of course, removing all the matching files at once could be a risky business. This is why rm command has the interactive mode. You can use the interactive mode with the option -i.
It will ask for confirmation for each of the file. You can enter y to delete the file and n for skipping the deletion.
rm: remove regular file 'file1.txt'? y rm: remove regular file 'file2.txt'? n
You just learned to delete files in the terminal. Let’s see how to remove directories in Linux.
How to remove directories in Linux
There is a command called rmdir which is short for remove directory. However, this rmdir command can only be used for deleting empty directories.
If you try to delete a non-empty directory with rmdir, you’ll see an error message:
rmdir: failed to remove 'dir': Directory not empty
There is no rmdir force. You cannot force rmdir to delete non-empty directory.
This is why I am going to use the same rm command to delete folders as well. Remembering the rm command is a lot more useful than rmdir which in my opinion is not worth the trouble.
1. Remove an empty directory
To remove an empty directory, you can use the -d option. This is equivalent to the rmdir command and helps you ensure that the directory is empty before deleting it.
2. Remove directory with content
To remove directory with contents, you can use the recursive option with rm command.
This will delete all the contents of the directory including its sub-directories. If there are write-protected files and directories, you’ll be asked to confirm the deletion.
3. Force remove a directory and its content
If you want to avoid the confirmation prompt, you can force delete.
4. Remove multiple directories
You can also delete multiple directories at once with rm command.
Awesome! So now you know how to remove directory in Linux terminal.
Summary
Here’s a summary of the rm command and its usage for a quick reference.
Purpose | Command |
---|---|
Delete a single file | rm filename |
Delete multiple files | rm file1 file2 file3 |
Force remove files | rm -f file1 file2 file3 |
Remove files interactively | rm -i *.txt |
Remove an empty directory | rm -d dir |
Remove a directory with its contents | rm -r dir |
Remove multiple directories | rm -r dir1 dir 2 dir3 |
I hope you like this tutorial and learned to delete files and remove directories in Linux command line. If you have any questions or suggestions, please leave a comment below.
How to remove files and directories quickly via terminal (bash shell) [closed]
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
From a terminal window: When I use the rm command it can only remove files.
When I use the rmdir command it only removes empty folders. If I have a directory nested with files and folders within folders with files and so on, is there a way to delete all the files and folders without all the strenuous command typing? If it makes a difference, I am using the Mac Bash shell from a terminal, not Microsoft DOS or Linux.
Just in case you wish to restore the files in future , don’t use «rm» for such cases . Use «rm-trash» : github.com/nateshmbhat/rm-trash
4 Answers 4
-r «recursive» -f «force» (suppress confirmation messages)
+1 and glad you added the «Be careful!» part. definitely a «Sawzall» command that can quickly turn a good day into a bad one.. if wielded carelessly.
@itsmatt: You know what they say. give someone a Sawzall, and suddenly every problem looks like hours of fun!
On a Mac? Do this instead: brew install trash then trash -rf some_dir This will move the unwanted directory into your trashbin instead of just vanishing Prestige-style into the ether. (source)
Would remove everything (folders & files) in the current directory.
But be careful! Only execute this command if you are absolutely sure, that you are in the right directory.
Yes, there is. The -r option tells rm to be recursive, and remove the entire file hierarchy rooted at its arguments; in other words, if given a directory, it will remove all of its contents and then perform what is effectively an rmdir .
The other two options you should know are -i and -f . -i stands for interactive; it makes rm prompt you before deleting each and every file. -f stands for force; it goes ahead and deletes everything without asking. -i is safer, but -f is faster; only use it if you’re absolutely sure you’re deleting the right thing. You can specify these with -r or not; it’s an independent setting.
And as usual, you can combine switches: rm -r -i is just rm -ri , and rm -r -f is rm -rf .
Also note that what you’re learning applies to bash on every Unix OS: OS X, Linux, FreeBSD, etc. In fact, rm ‘s syntax is the same in pretty much every shell on every Unix OS. OS X, under the hood, is really a BSD Unix system.
How to Remove (Delete) a File or Directory in Linux
Note: If you feel that a directory is misplaced and you do not want to remove it, try moving it to a different place. To learn how, visit our post How to Move Directories in Linux.
How To Remove or Delete Linux Files
The rm command deletes files in a Linux. The command unlinks the data from the file name, allowing the user to overwrite on that particular storage space.
To delete a single file, entering the following in the command line:
The rm command can be used to delete more than one file at a time:
rm filename_1 filename_2 filename_3
Wildcards can be used with this command.
For example, to delete all files with the .bmp filename, enter:
This method is also used to delete all files that contain a string of characters:
This will erase any file that has the word sample in the name.
The system will search the current directory for the file you want to remove.
To delete a file in a different directory, either switch to that directory first:
Or you can specify the file location in a single command directly:
Note: Once the rm command has deleted a file, you will not be able to access it. The only way to retrieve a file would be to restore it from a backup (if one is available).
rm Command Options
You can adjust the way the rm command works by adding options. An option is a hyphen, followed by one or more letters that stand for commands.
If you’re deleting multiple files, add a confirmation prompt. Use the –i option to use an interactive dialog:
Confirm the deletion of files by typing ‘yes’ or ‘no.’
To display the progress of the deletion with the v or verbose command:
The output confirms that the file test.txt has been successfully removed.
To force the removal of a file that’s write-protected, use the –f option:
To use sudo privileges for a file that says Access denied and delete it:
Note: Read about sudo rm -rf and why it is a dangerous Linux command.
How to Delete a Directory in Linux
A linux directory (or folder) can be empty, or it can contain files. To remove a directory in Linux, use one of the following two commands:
- rmdir command – removes empty directories/folders
- rm command – removes a directory/folder along with all the files and sub-directories in it
Remove Directory Linux with rm Command
By adding the -r (-R) option to the rm command, you can remove a directory along with all its contents.
To remove a directory (and everything inside of it) use the –r option as in the command:
This will prompt you for confirmation before deleting.
To remove a directory without confirmation:
Also, you can delete more than one directory or folder at a time:
rm –r dir_name1 dir_name2 dir_name3
Remove Directories in Linux with rmdir Command
Remember, the rmdir command is used only when deleting empty folders and directories in Linux. If a specified directory is not empty, the output displays an error.
The basic syntax used for removing empty Linux folders/directories is:
Additionally, you can delete multiple empty directories at once by typing:
rmdir [dir_name1][dir_name2][dir_name3]
If the command finds content in one of the listed directories, it will skip it and move on to the next one.
Note: To permanently delete a file in Linux by overwriting it, use the shred command.
With this tutorial, deleting files and directories in Linux was made easy. The rm and rmdir commands are flexible with many options available.
Vladimir is a resident Tech Writer at phoenixNAP. He has more than 7 years of experience in implementing e-commerce and online payment solutions with various global IT services providers. His articles aim to instill a passion for innovative technologies in others by providing practical advice and using an engaging writing style.
The find command is a useful command-line tool in Linux. It allows you to use the terminal to search for a.
If a Linux process becomes unresponsive or is consuming too many resources, you may need to kill it. Most.
The chown command changes user ownership of a file, directory, or link in Linux. Every file is associated.
Want to learn how to copy files in Linux OS? This guide will show you how to use the Linux commands to copy.