Skip to content
  • Homepage
  • HTML
  • CSS
  • Symfony
  • PHP
  • How to
  • Contact
  • Donate

Teach Developer

Articles, Guides & Tips

How to Delete Files in Ubuntu Command Line

Home  »  Tips • Top Tutorials • Ubuntu   »   How to Delete Files in Ubuntu Command Line
Posted on January 2, 2024January 2, 2024
500

When you are new to the command line, even the simplest of the tasks may leave you searching the internet.

Take the removal of files for example. You don’t have the luxury of right-clicking and opting for the delete option here.

But when you know the right commands, things are not as scary.

To delete a file in the Ubuntu terminal, you can use the  rm command like this:

rm filename

You won’t see any output by default if the file is removed successfully.

$ ls
file_to_be_deleted

$ rm file_to_be_deleted
$

You may also provide the path of the file if you are not in the same directory.

There are a few more things about removing files in the command line that you may want to know. Let’s see it in a bit more detail.

Remove a single file in the command line

Although there are other commands that you can use to remove files, the rm command is the one that is used more frequently than others, and for a reason — the ease of use and versatility.

Let us first look at the syntax of rm command:

rm filename

That’s quite simple, right? It shows no output for successful deletion. You can make it show an output by using the verbose mode.

Removing files in verbose mode

To see an output with the rm command, use the option -v.

rm -v filename

I have a file with the name ‘file_to_be_deleted’ and I wish to delete it. Let’s see how to remove this file using the rm command.

$ ls
file_to_be_deleted

$ rm -v file_to_be_deleted
removed 'file_to_be_deleted'

As evident from the output, the desired file has now been removed.

This verbose mode is helpful when you are removing multiple files. You can see which files were deleted.

Removing multiple files

The rm command is not limited to removing only a single file at a time. You can delete as many files as you want. Just provide the filenames or paths:

rm file1 file2 file3

Here’s a practical example of deleting multiple files with the optional verbose mode:

$ rm -v file_to_del_1 file_to_del_2 file_to_del_3 file_to_del_4 file_to_del_5
removed 'file_to_del_1'
removed 'file_to_del_2'
removed 'file_to_del_3'
removed 'file_to_del_4'
removed 'file_to_del_5'

Removing multiple files using wildcard or regex

It’s easy to provide file names if you have 5 of them. It won’t be easy if you have 50 of them.

If the filenames follow a certain pattern, you can use wildcard or regex to delete them all at once.

For example, in my current directory, I have files that end with the extension ‘.exe’, which aren’t terribly useful on Ubuntu.

So let us see how to remove them.

$ ls -1 *.exe
cutting_edge_chromium.exe
defender_of_windows.exe
my_outlook_on_this_world.exe
totally_legit_ms_office.exe

The rm command supports specifying files using wildcards. You can use regular expressions too, but that is too complicated for our simple demonstration.

Here, I will use the asterisk wildcard character to achieve this.

$ rm -v *.exe
removed 'cutting_edge_chromium.exe'
removed 'defender_of_windows.exe'
removed 'my_outlook_on_this_world.exe'
removed 'totally_legit_ms_office.exe'

This removed all the ‘.exe’ files, regardless of their names. How amazing is that? But it’s also risky because you don’t know which files are being removed.

Get prompted before file removal

Using wildcards and/or regular expressions to remove a large number of files is very convenient. But it is also very dangerous. Maybe there was a file that you did not intend to remove but is now removed due to some misconfiguration with the wildcard and/or regular expression.

For this, use the -i option. This option will make the rm command ask you if you wish to desire a file. This will be done for every file that is specified for removal.

$ ls *del*
do_not_delete file_to_delete marked_for_deletion never_delete_this unsure_about_deletion

$ rm -v -i *del*
rm: remove regular empty file 'do_not_delete'? n
rm: remove regular empty file 'file_to_delete'? y
removed 'file_to_delete'
rm: remove regular empty file 'marked_for_deletion'? y
removed 'marked_for_deletion'
rm: remove regular empty file 'never_delete_this'? n
rm: remove regular empty file 'unsure_about_deletion'? n

I can specify which file to keep or which file to remove using n or y respectively.

As you can see, I kept the files ‘do_not_delete’, ‘never_delete_this’ and ‘unsure_about_deletion’, but I let rm remove files ‘file_to_delete’ and ‘marked_for_deletion’.

This can come in very handy when you are not sure about which files to delete, or when there are a large number of files present and you want to be sure before removing them.

Force delete write-protected files

I have a file, and its permissions are as shown below:

$ ls my_special_file
my_special_file

If you closely, I do not have permission to write. This means that I can not modify ‘my_special_file’. When I try to remove it, it will ask me if I want to remove a write-protected file.

$ rm -v my_special_file
rm: remove write-protected regular empty file 'my_special_file'? y
removed 'my_special_file'

If I do not want a prompt, I will use the -f option to remove files forcefully.

$ rm -v -f my_special_file
removed 'my_special_file'

Tips, Top Tutorials, Ubuntu

Post navigation

Previous Post: How to Deploy a React application on a cPanel
Next Post: What is SSH in Linux?

Related Posts

  • How to Delete and Remove Files on Ubuntu Linux Terminal
  • How to Reverse A String with JavaScript
  • PHP 8.1: read-only properties
  • TOP 10 MOST POPULAR PROGRAMMING LANGUAGES IN 2022
  • PHP 8: Attributes
  • How to Deploy or Host your ReactJS App in cPanel

Categories

  • Codeigniter (3)
  • CSS (11)
  • eCommerce (1)
  • Framework (1)
  • Git (3)
  • How to (43)
  • HTML (5)
  • JavaScript (15)
  • Jquery (7)
  • Laravel (1)
  • Linux (4)
  • Magento-2 (1)
  • Node js (4)
  • Others (2)
  • PHP (11)
  • React (13)
  • Server (1)
  • SSH (3)
  • Symfony (6)
  • Tips (16)
  • Top Tutorials (10)
  • Ubuntu (3)
  • Vue (1)
  • Wordpress (7)

Latest Posts

  • What is SSH in Linux?
  • How to Delete Files in Ubuntu Command Line
  • How to Deploy a React application on a cPanel
  • How to use events listeners and Event Subscriber in Symfony
  • How to Convert PHP CSV to JSON

WEEKLY TAGS

AJAX (1) Codeigniter (1) Javascript (11) JQuery (1) PHP (16) Programming (1) React (3) Symfony (1)

Random Post

How to move an entire div element up x pixels with CSS?
How to Change SSH Port in Linux
How to Delete and Remove Files on Ubuntu Linux Terminal
How to Define Global Variables for Twig Templates in Symfony 6
How to Get Environment Variables in Laravel ReactJS

Quick Navigation

  • About
  • Contact
  • Privacy Policy

© Teach Developer 2021. All rights reserved