How to Delete a File or Directory in Linux – Command to Remove a Folder and its Contents

In Linux, deleting files or directories is a basic yet essential task that every user should be familiar with. While it may appear simple, there are various methods to remove files or directories, each suited to different scenarios.

This tutorial will offer a detailed, step-by-step guide on how to delete files and directories in Linux. We will also cover the commands you can use to remove files, folders, and their contents.

How to Delete a File in Linux

Deleting a file means removing its reference from the file system. Although the file is not instantly erased from the storage device, its space is marked as available for future use.

There are various methods to delete a file in Linux. Below are some of the most commonly used approaches:

Using the GUI file manager

Most Linux distributions include a GUI file manager that lets you delete files through a graphical interface. Just navigate to the file you wish to delete, right-click on it, and choose “Delete” or “Move to Trash.”

Using the rm command

You can also use the rm (remove) command to delete files and directories in Linux. To delete a file with the rm command, enter the following in the terminal:

rm filename

Ensure you replace filename with the name of the file you wish to delete. If the file is write-protected or you lack the necessary permissions, you will be asked to confirm the deletion.

Using the shred command

The shred command provides a more secure method of deleting files by overwriting their contents multiple times before removal. This process makes it significantly harder for anyone to recover the deleted file.

To use the shred command, enter the following in the terminal:

shred -u filename

Ensure you replace filename with the name of the file you want to delete. The -u option directs shred to delete the file after overwriting it.

Using the trash-cli command

The trash-cli command offers a safer method for deleting files by moving them to the trash rather than deleting them permanently. To use the trash-cli command, you first need to install it:

sudo apt-get install trash-cli

After installation, you can delete a file with the following command:

trash filename

How to Delete a Directory in Linux

To delete a directory in Linux, you can use either the rmdir or rm command. The rmdir command removes an empty directory, while the rm command deletes a directory along with all of its contents.

Using the rm command

Here are the steps to delete a directory in Linux using the rm command:

  1. Open the terminal: To delete a directory in Linux, you’ll need to use the command line. Open the terminal by pressing “Ctrl+Alt+T” on your keyboard or by searching for “terminal” in your system’s application menu.
  2. Navigate to the directory you want to delete: Use the cd command to go to the directory you wish to delete. For example, if the directory is named my_directory and is located in your home folder, type cd ~/my_directory and press “Enter”.
  3. Check the contents of the directory: Before deleting the directory, it’s a good idea to review its contents to ensure you’re deleting the correct one. Use the ls command to list the files and folders inside the directory. For example, type ls and press “Enter” to view the contents of the my_directory folder.
  4. Delete the directory and its contents: To remove the directory and everything inside it, use the rm command with the -r (recursive) option. Type rm -r my_directory and press “Enter.” You will be asked to confirm the deletion. Type y and press “Enter” to proceed.
  5. Verify the deletion: To confirm the directory has been deleted, use the ls command to list the contents of the parent directory. For example, if my_directory was in your home folder, type ls ~/ and press “Enter.” The my_directory folder should no longer appear in the list.

Note: Exercise caution when using the rm -r command, as it can permanently delete files and directories without recovery.

Using the rmdir command

Here are the steps to delete a directory in Linux using the rmdir command:

  1. Open the terminal: Launch the terminal by pressing “Ctrl+Alt+T” on your keyboard or by searching for “terminal” in your system’s application menu.
  2. Navigate to the directory you want to delete: Use the cd command to go to the directory you wish to delete. For example, if the directory is called my_directory and is located in your home folder, type cd ~/my_directory and press “Enter.”
  3. Delete the directory: To remove the directory, use the rmdir command followed by the directory name. Type rmdir my_directory and press “Enter.” If the directory contains files, you will receive an error, and the directory will not be deleted.
  4. Verify the deletion: To check if the directory has been deleted, use the ls command to list the contents of the parent directory. For example, if my_directory was in your home folder, type ls ~/ and press “Enter.” The my_directory folder should no longer appear.

Conclusion

The rm command is the most commonly used for deleting files, while the rmdir and rm commands with the -r or -R options are used to delete directories. By following this step-by-step guide, you can now efficiently delete files or directories in Linux.

Additional tips:

  1. Exercise caution when using the rm command with the -r or -R option, as it can permanently delete files and directories.
  2. Always double-check the file or directory name before deleting to prevent accidentally removing the wrong one.
  3. Use the shred command only when needed, as it may take longer to delete files compared to other methods.
  4. Be aware of file permissions when deleting files or directories, as some may require root access for removal.

Happy Coding!

Leave a Comment