Bird
Raised Fist0
Linux CLIscripting~10 mins

find command basics in Linux CLI - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to find all files named 'notes.txt' in the current directory and its subdirectories.

Linux CLI
find . -name [1]
Drag options to blanks, or click blank then click option'
A"notes.txt"
Bnotes.txt
C'notes.txt'
D*.txt
Attempts:
3 left
💡 Hint
Common Mistakes
Not quoting the filename, which may cause shell expansion.
Using double quotes which may allow shell expansion in some cases.
Using a wildcard like '*.txt' which matches more files than needed.
2fill in blank
medium

Complete the code to find all directories named 'backup' starting from the root directory.

Linux CLI
find / -type [1] -name 'backup'
Drag options to blanks, or click blank then click option'
Ad
Bf
Cl
Dx
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-type f' which searches for files, not directories.
Using invalid type letters like 'x'.
3fill in blank
hard

Fix the error in the code to find files larger than 1 megabyte in the /var directory.

Linux CLI
find /var -size [1]
Drag options to blanks, or click blank then click option'
A-1M
B+1M
C1m
D1M
Attempts:
3 left
💡 Hint
Common Mistakes
Omitting '+' which searches for files exactly 1M in size.
Using lowercase 'm' which is not recognized.
Using '-' which searches for files smaller than 1M.
4fill in blank
hard

Complete the code to find all files modified within the last 7 days and print their names.

Linux CLI
find /home/user -type f -mtime [1] -print
Drag options to blanks, or click blank then click option'
A-7
B+7
D -print
Attempts:
3 left
💡 Hint
Common Mistakes
Using '+7' which finds files modified more than 7 days ago.
Adding extra space before '-print' causing syntax error.
5fill in blank
hard

Fill all three blanks to find all '.log' files owned by user 'admin' and delete them.

Linux CLI
find /var/log -name [1] -user [2] -exec [3] {} \;
Drag options to blanks, or click blank then click option'
A'*.log'
Badmin
Crm
Dls
Attempts:
3 left
💡 Hint
Common Mistakes
Not quoting '*.log' causing shell to expand before find runs.
Using wrong user name or command in '-exec'.
Forgetting to escape semicolon in '-exec'.

Practice

(1/5)
1. What does the find command do in Linux?
easy
A. Copies files from one folder to another
B. Deletes files permanently
C. Searches for files and directories based on criteria
D. Displays the contents of a file

Solution

  1. Step 1: Understand the purpose of the find command

    The find command is used to locate files and directories by searching through folders and subfolders.
  2. Step 2: Compare options

    Options B, C, and D describe other commands like rm, cp, and cat, not find.
  3. Final Answer:

    Searches for files and directories based on criteria -> Option C
  4. Quick Check:

    find = search files [OK]
Hint: Remember: find means locate files/folders fast [OK]
Common Mistakes:
  • Confusing find with delete or copy commands
  • Thinking find edits files
  • Assuming find shows file contents
2. Which of the following is the correct syntax to find all files named notes.txt in the current directory and its subdirectories?
easy
A. find . -name notes.txt
B. find -name notes.txt .
C. find notes.txt -name .
D. find . notes.txt -name

Solution

  1. Step 1: Recall find command syntax

    The correct syntax is: find [path] [options]. Here, '.' means current directory, '-name' specifies the filename.
  2. Step 2: Check each option

    find . -name notes.txt matches the correct syntax. Options A, B, and D have misplaced arguments or options.
  3. Final Answer:

    find . -name notes.txt -> Option A
  4. Quick Check:

    find . -name filename [OK]
Hint: Path first, then options like -name [OK]
Common Mistakes:
  • Putting filename before path
  • Missing dot for current directory
  • Wrong order of options and arguments
3. What will be the output of the command find /tmp -type d -name "test" if there is a directory named test inside /tmp?
medium
A. It will list the full path of the directory named test inside /tmp
B. It will list all files named test inside /tmp
C. It will delete the directory named test inside /tmp
D. It will show an error because of incorrect syntax

Solution

  1. Step 1: Understand the command options

    /tmp is the search path, -type d means only directories, -name "test" looks for name 'test'.
  2. Step 2: Predict output

    The command will print the full path of any directory named 'test' inside /tmp and its subfolders.
  3. Final Answer:

    It will list the full path of the directory named test inside /tmp -> Option A
  4. Quick Check:

    find with -type d lists directories [OK]
Hint: -type d means directories only [OK]
Common Mistakes:
  • Confusing -type d with files
  • Expecting deletion instead of listing
  • Assuming syntax error without checking
4. You run find /home/user -name '*.txt' but get no results even though there are .txt files. What is the most likely problem?
medium
A. The quotes prevent the shell from expanding the wildcard
B. The path /home/user does not exist
C. The command should use -type d instead of -name
D. The wildcard * is not supported by find

Solution

  1. Step 1: Understand wildcard usage in find

    Using quotes around '*.txt' prevents the shell from expanding the wildcard, which is correct because find handles the pattern matching itself.
  2. Step 2: Identify common mistake

    With correct syntax, no results despite .txt files existing suggests the path /home/user does not exist or is inaccessible.
  3. Final Answer:

    The path /home/user does not exist -> Option B
  4. Quick Check:

    ls /home/user [OK]
Hint: Verify path exists before searching [OK]
Common Mistakes:
  • Removing quotes and letting shell expand
  • Using -type d for files
  • Wrong path assumption
5. How can you use the find command to locate all files larger than 1MB in the /var/log directory and delete them safely after confirmation?
hard
A. find /var/log -type d -size +1M -ok rm {} \;
B. find /var/log -type f -size +1M -delete
C. find /var/log -size 1M -exec rm {} \;
D. find /var/log -type f -size +1M -ok rm {} \;

Solution

  1. Step 1: Identify criteria for files larger than 1MB

    -type f means files, -size +1M means size greater than 1 megabyte.
  2. Step 2: Choose safe deletion method

    -ok rm {} \; asks for confirmation before deleting each file, which is safer than -delete or -exec rm without confirmation.
  3. Step 3: Check options

    find /var/log -type f -size +1M -ok rm {} \; uses -ok for confirmation, correct. find /var/log -type f -size +1M -delete deletes without confirmation. find /var/log -size 1M -exec rm {} \; uses wrong size syntax and no confirmation. find /var/log -type d -size +1M -ok rm {} \; searches directories, not files.
  4. Final Answer:

    find /var/log -type f -size +1M -ok rm {} \; -> Option D
  5. Quick Check:

    -ok asks confirmation before delete [OK]
Hint: Use -ok for safe delete with confirmation [OK]
Common Mistakes:
  • Using -delete without confirmation
  • Wrong size syntax
  • Searching directories instead of files
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