Bird
Raised Fist0
Linux CLIscripting~10 mins

Shell concept (Bash, Zsh) 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 list all files in the current directory.

Linux CLI
ls [1]
Drag options to blanks, or click blank then click option'
A-l
B-a
C-x
D-z
Attempts:
3 left
💡 Hint
Common Mistakes
Using options that do not list hidden files
Typing options without dash
2fill in blank
medium

Complete the code to print the current working directory.

Linux CLI
[1]
Drag options to blanks, or click blank then click option'
Acd
Bls
Cpwd
Decho
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'ls' which lists files
Using 'cd' which changes directory
3fill in blank
hard

Fix the error in the command to create a new directory named 'projects'.

Linux CLI
mkdir [1]
Drag options to blanks, or click blank then click option'
Aprojects
Bproject
C-p
Dproject_dir
Attempts:
3 left
💡 Hint
Common Mistakes
Using singular form 'project'
Using option flags instead of directory name
4fill in blank
hard

Fill both blanks to create a file named 'notes.txt' and write 'Hello World' into it.

Linux CLI
[1] [2] 'Hello World'
Drag options to blanks, or click blank then click option'
Aecho
Bcat
C>
D>>
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'cat' which reads files
Using '>>' which appends instead of overwriting
5fill in blank
hard

Fill all three blanks to list all files, including hidden ones, in long format sorted by modification time.

Linux CLI
ls [1] [2] [3]
Drag options to blanks, or click blank then click option'
A-a
B-l
C-t
D-r
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-r' which reverses order
Missing the option to show hidden files

Practice

(1/5)
1. What is a shell in Linux or macOS?
easy
A. A programming language for creating websites
B. A program that lets you type commands to control your computer
C. A graphical interface for editing photos
D. A type of hardware component inside the computer

Solution

  1. Step 1: Understand the role of a shell

    A shell is a program that takes your typed commands and runs them on the computer.
  2. Step 2: Compare options

    Options A, B, and C describe web programming, hardware, and graphics, which are not shells.
  3. Final Answer:

    A program that lets you type commands to control your computer -> Option B
  4. Quick Check:

    Shell = command program [OK]
Hint: Shell = command line program to control computer [OK]
Common Mistakes:
  • Thinking shell is hardware
  • Confusing shell with graphical apps
  • Mixing shell with programming languages
2. Which of these is the correct way to run a command with an option in Bash?
easy
A. ls -ll
B. ls -l -
C. ls l-
D. ls -l

Solution

  1. Step 1: Identify correct option syntax

    Options start with a dash (-) followed by letters, so '-l' is correct.
  2. Step 2: Check each option

    A: 'ls -l' is correct. B has extra dash, C has wrong order, D uses '-ll' which repeats the option unnecessarily.
  3. Final Answer:

    ls -l -> Option D
  4. Quick Check:

    Options start with dash and letter [OK]
Hint: Options start with dash (-) followed by letters [OK]
Common Mistakes:
  • Adding extra dash after options
  • Writing options without dash
  • Combining options incorrectly
3. What will the following Bash command output?
echo "Hello"; echo "World"
medium
A. Hello World (two lines)
B. Hello\nWorld
C. Hello World
D. Hello World

Solution

  1. Step 1: Understand the echo command

    Each echo prints its argument followed by a new line by default.
  2. Step 2: Analyze the command sequence

    First echo prints 'Hello' then newline, second echo prints 'World' then newline, so output is two lines.
  3. Final Answer:

    Hello World (two lines) -> Option A
  4. Quick Check:

    echo prints with newline [OK]
Hint: echo prints text then newline by default [OK]
Common Mistakes:
  • Thinking echo joins output on one line
  • Confusing literal \n with newline
  • Ignoring semicolon separates commands
4. What is wrong with this Bash script snippet?
for i in 1 2 3
do
echo $i
done
medium
A. Missing semicolon after '3'
B. Incorrect loop syntax, should use parentheses
C. No error, script runs fine
D. Missing 'do' keyword

Solution

  1. Step 1: Check for loop syntax

    The for loop syntax 'for i in 1 2 3; do ... done' is correct. The semicolon after '3' is optional if 'do' is on next line.
  2. Step 2: Verify keywords and structure

    'do' is present, parentheses are not needed in Bash for this loop, so no syntax error.
  3. Final Answer:

    No error, script runs fine -> Option C
  4. Quick Check:

    Bash for loop syntax correct without semicolon if newline before do [OK]
Hint: Newline before 'do' replaces semicolon in for loops [OK]
Common Mistakes:
  • Thinking semicolon is always required
  • Confusing Bash syntax with other languages
  • Missing 'do' keyword
5. You want to list all files in a directory including hidden ones, sorted by modification time. Which command should you use?
hard
A. ls -a -t
B. ls -l -h
C. ls -r -S
D. ls -d .*

Solution

  1. Step 1: Understand options needed

    '-a' shows all files including hidden, '-t' sorts by modification time.
  2. Step 2: Evaluate each option

    A: 'ls -r -S' reverses and sorts by size (no hidden). B: 'ls -l -h' long format with human sizes (no hidden, no time sort). C: 'ls -a -t' shows all including hidden, sorted by mod time. D: 'ls -d .*' shows only dot entries.
  3. Final Answer:

    ls -a -t -> Option A
  4. Quick Check:

    Show hidden + sort by time = ls -a -t [OK]
Hint: Use -a for hidden, -t for time sort [OK]
Common Mistakes:
  • Using -l instead of -a to show hidden
  • Confusing -S (size) with -t (time)
  • Using -d .* lists only hidden 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