Bird
Raised Fist0
Linux CLIscripting~15 mins

rm -r (remove directories) in Linux CLI - Mini Project: Build & Apply

Choose your learning style10 modes available
Remove Directories Using rm -r Command
šŸ“– Scenario: You are managing files and folders on your computer. Sometimes, you need to delete folders that contain files or other folders inside them.
šŸŽÆ Goal: Learn how to safely remove directories and their contents using the rm -r command in the Linux terminal.
šŸ“‹ What You'll Learn
Create a directory named test_folder with two files inside.
Create a variable to hold the directory name.
Use the rm -r command with the variable to remove the directory and its contents.
Display a message confirming the directory was removed.
šŸ’” Why This Matters
šŸŒ Real World
Deleting folders and their contents is common when cleaning up files or uninstalling software.
šŸ’¼ Career
System administrators and developers often use <code>rm -r</code> to manage files and directories efficiently.
Progress0 / 4 steps
1
Create a directory with files
Create a directory named test_folder and inside it create two empty files named file1.txt and file2.txt using the mkdir and touch commands.
Linux CLI
Hint

Use mkdir test_folder to create the folder. Then use touch test_folder/file1.txt test_folder/file2.txt to create files inside it.

2
Set a variable for the directory name
Create a variable called dir_name and set it to the string test_folder.
Linux CLI
Hint

Use dir_name="test_folder" to store the folder name in a variable.

3
Remove the directory and its contents
Use the rm -r command with the variable dir_name to remove the directory and everything inside it.
Linux CLI
Hint

Use rm -r "$dir_name" to delete the folder and all files inside it.

4
Confirm the directory removal
Print the message "Directory test_folder removed successfully." to confirm the folder was deleted.
Linux CLI
Hint

Use echo "Directory test_folder removed successfully." to print the message.

Practice

(1/5)
1. What does the command rm -r foldername do in Linux?
easy
A. Moves the folder named 'foldername' to the trash bin.
B. Deletes the folder named 'foldername' and all its contents recursively.
C. Renames the folder named 'foldername' to 'r'.
D. Creates a new folder named 'foldername'.

Solution

  1. Step 1: Understand the rm command

    The rm command is used to remove files or directories in Linux.
  2. Step 2: Understand the -r option

    The -r option means recursive, so it deletes the folder and everything inside it.
  3. Final Answer:

    Deletes the folder named 'foldername' and all its contents recursively. -> Option B
  4. Quick Check:

    rm -r deletes folders recursively = C [OK]
Hint: Remember: rm -r removes folders and all inside them [OK]
Common Mistakes:
  • Thinking rm -r moves files to trash
  • Confusing rm -r with renaming
  • Assuming rm -r only deletes empty folders
2. Which of the following is the correct syntax to remove a directory named data and all its contents?
easy
A. rm data -r
B. rmdir -r data
C. rm -r data
D. rm -f data

Solution

  1. Step 1: Check the position of the -r option

    The correct syntax places options before the target, so rm -r data is valid.
  2. Step 2: Validate other options

    rm data -r is incorrect syntax; rm -f data does not recurse on directories; rmdir -r data is invalid because rmdir does not support -r.
  3. Final Answer:

    rm -r data -> Option C
  4. Quick Check:

    Options come before target in rm command = D [OK]
Hint: Options go before folder name in rm command [OK]
Common Mistakes:
  • Placing options after folder name
  • Using rmdir with -r option
  • Confusing rm -r with rm -f
3. Given this directory structure:
project/
ā”œā”€ā”€ file1.txt
ā”œā”€ā”€ folderA/
│   └── file2.txt
└── folderB/
    └── file3.txt

What happens after running rm -r project/folderA?
medium
A. folderA and file2.txt are deleted, other files remain.
B. Only file2.txt is deleted, folderA remains.
C. Entire project folder is deleted.
D. Command fails with an error.

Solution

  1. Step 1: Identify target folder

    The command targets project/folderA, so only that folder and its contents are affected.
  2. Step 2: Understand recursive deletion

    Using -r deletes folderA and everything inside it, including file2.txt, but leaves other folders and files intact.
  3. Final Answer:

    folderA and file2.txt are deleted, other files remain. -> Option A
  4. Quick Check:

    rm -r deletes target folder and contents only = B [OK]
Hint: rm -r deletes only specified folder and contents, not siblings [OK]
Common Mistakes:
  • Thinking only files inside folderA are deleted but folder remains
  • Assuming entire project folder is deleted
  • Expecting command to fail without error
4. You run rm myfolder but get the error: rm: cannot remove 'myfolder': Is a directory. What is the likely cause?
medium
A. You forgot to use the -r option.
B. You do not have permission to delete the folder.
C. The folder is empty.
D. The folder name is misspelled.

Solution

  1. Step 1: Analyze the error message

    The error 'Is a directory' occurs when rm is used on a directory without the -r option.
  2. Step 2: Check the command

    The shown command lacks -r, confirming the recursive option was forgotten.
  3. Final Answer:

    You forgot to use the -r option. -> Option A
  4. Quick Check:

    rm dir without -r gives 'Is a directory' error = B [OK]
Hint: rm on directory without -r gives 'Is a directory' error [OK]
Common Mistakes:
  • Thinking it's a permission issue
  • Believing empty folders cause this error
  • Suspecting misspelled name
5. You want to safely delete a directory backup only if it exists. Which command sequence achieves this?
hard
A. rmdir backup
B. rm -r backup || echo 'No such directory'
C. rm backup -r
D. [ -d backup ] && rm -r backup

Solution

  1. Step 1: Check if directory exists

    The test [ -d backup ] returns true if 'backup' is a directory.
  2. Step 2: Conditionally remove directory

    The && operator runs rm -r backup only if the test is true, safely deleting the directory and contents.
  3. Final Answer:

    [ -d backup ] && rm -r backup -> Option D
  4. Quick Check:

    Test directory exists before rm -r = A [OK]
Hint: Use [ -d folder ] && rm -r folder to delete safely [OK]
Common Mistakes:
  • Using rm -r without checking existence
  • Using rmdir which fails if folder not empty
  • Incorrect option order in rm command
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard