How to remove a directory in Linux

January 27, 2023 / Command Line

In Linux and Unix-based operating systems, directories are treated as file system objects and can be removed using command-line utilities. This article explains how to safely remove empty and non-empty directories using standard Linux commands.

Important: Deleting directories is a permanent action. Always verify the directory name before executing removal commands.

Removing an Empty Directory

  1. To remove an empty directory, use the rmdir command or the rm -d option:
    rmdir directory_name

    or

    rm -d directory_name

    These commands will fail if the directory contains files or subdirectories.

  2. Removing a Non-Empty Directory
    To remove a directory that contains files or subdirectories, use the recursive option with rm:

    rm -r directory_name

    This command deletes the directory and all of its contents.
    Use this command with caution, as it removes files permanently.

  3. Helpful Commands Before Deleting a Directory
    List Files and Directories
    To view files and directories in the current location:

    ls
  4. Check Current Directory
    To confirm your current working directory:

    pwd

    These commands help ensure you are deleting the correct directory.

Common rm and rmdir Options

  • rm -d – Remove an empty directory
  • rm -r – Remove a directory and its contents recursively
  • rm -f – Force deletion without confirmation
  • rm -rf – Forcefully remove directories and contents (use with extreme caution)
  • rm -i – Prompt before each deletion
  • rm * – Remove all files in the current directory
  • rm ? – Remove files matching a single-character pattern
  • rmdir -p – Remove parent directories if they become empty
  • rmdir -v – Display verbose output

By using the appropriate commands, you can safely remove directories in Linux based on whether they are empty or contain files. Always double-check directory names and paths before running removal commands to avoid accidental data loss.

Spread the love