Bird
Raised Fist0
Bash Scriptingscripting~10 mins

Prompting with read -p in Bash Scripting - Interactive Code Practice

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

Complete the code to prompt the user for their name and store it in the variable.

Bash Scripting
read [1]
Drag options to blanks, or click blank then click option'
A-p 'Enter your name: ' name
B-p name
C-p 'Enter your name: '
D-n 'Enter your name: '
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to include the variable name after the prompt.
Using '-n' instead of '-p' for prompting.
2fill in blank
medium

Complete the code to prompt the user for their age and store it in the variable 'age'.

Bash Scripting
read [1] age
Drag options to blanks, or click blank then click option'
A-n 'Enter your age: '
B-s 'Enter your age: '
C-p 'Enter your age: '
D-r 'Enter your age: '
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-n' which limits the number of characters read instead of prompting.
Using '-s' which hides input (used for passwords).
3fill in blank
hard

Fix the error in the code to correctly prompt for a password without showing input.

Bash Scripting
read [1] password
Drag options to blanks, or click blank then click option'
A-p 'Enter password: '
B-n 'Enter password: '
C-r 'Enter password: '
D-s -p 'Enter password: '
Attempts:
3 left
💡 Hint
Common Mistakes
Using only '-p' which shows input.
Using '-n' which limits input length instead of hiding input.
4fill in blank
hard

Fill both blanks to prompt the user for their favorite color and store it in 'color'.

Bash Scripting
read [1] [2]
Drag options to blanks, or click blank then click option'
A-p 'What is your favorite color? '
B-s
Ccolor
Danswer
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-s' which hides input when not needed.
Using wrong variable names.
5fill in blank
hard

Fill all three blanks to prompt for username and password, hiding password input.

Bash Scripting
read [1] username
read [2] [3]
Drag options to blanks, or click blank then click option'
A-p 'Enter username: '
B-s -p 'Enter password: '
Cpassword
D-p 'Enter password: '
Attempts:
3 left
💡 Hint
Common Mistakes
Not hiding password input.
Forgetting to specify variable names.

Practice

(1/5)
1. What does the read -p command do in a bash script?
easy
A. It deletes a file specified by the user.
B. It prints a message without waiting for user input.
C. It runs a command silently without showing output.
D. It prompts the user with a message and stores their input in a variable.

Solution

  1. Step 1: Understand the purpose of read -p

    The read -p command shows a prompt message and waits for user input.
  2. Step 2: Identify what happens with the input

    The input entered by the user is saved into a variable for later use in the script.
  3. Final Answer:

    It prompts the user with a message and stores their input in a variable. -> Option D
  4. Quick Check:

    read -p = prompt and store input [OK]
Hint: Remember: read -p asks and saves input in one step [OK]
Common Mistakes:
  • Thinking read -p only prints text without input
  • Confusing read -p with commands that delete files
  • Assuming it runs commands silently
2. Which of the following is the correct syntax to prompt the user with "Enter your name:" and save it in variable name?
easy
A. read name -p "Enter your name:"
B. read -name "Enter your name:"
C. read -p "Enter your name:" name
D. read -prompt "Enter your name:" name

Solution

  1. Step 1: Recall the correct order of read -p

    The correct syntax is read -p "prompt message" variable.
  2. Step 2: Match the syntax with options

    read -p "Enter your name:" name matches the correct syntax exactly: read -p "Enter your name:" name.
  3. Final Answer:

    read -p "Enter your name:" name -> Option C
  4. Quick Check:

    Syntax = read -p "prompt" variable [OK]
Hint: Remember: -p comes before the prompt string [OK]
Common Mistakes:
  • Placing variable before -p
  • Using invalid flags like -name or -prompt
  • Missing quotes around the prompt message
3. What will be the output of this script if the user enters "Alice"?
read -p "Enter your name: " user
 echo "Hello, $user!"
medium
A. Hello, Alice!
B. Hello, user!
C. Enter your name: Hello, !
D. Syntax error

Solution

  1. Step 1: Understand the read -p command

    The script prompts "Enter your name: " and waits for input, storing it in variable user.
  2. Step 2: Substitute the variable in the echo command

    If the user types "Alice", $user becomes "Alice", so the echo prints "Hello, Alice!".
  3. Final Answer:

    Hello, Alice! -> Option A
  4. Quick Check:

    User input = Alice, output = Hello, Alice! [OK]
Hint: Variable stores input; echo prints it with $variable [OK]
Common Mistakes:
  • Expecting the prompt text to appear in output
  • Confusing variable name with literal text
  • Assuming syntax error without checking code
4. Identify the error in this script snippet:
read -p Enter your age: age
 echo "You are $age years old."
medium
A. The read command cannot use -p.
B. Missing quotes around the prompt message.
C. The echo command syntax is wrong.
D. Variable name cannot be age.

Solution

  1. Step 1: Check the read -p syntax

    The prompt message after -p must be enclosed in quotes to be treated as a single string.
  2. Step 2: Identify the missing quotes

    The script has read -p Enter your age: age without quotes around "Enter your age:", causing a syntax error.
  3. Final Answer:

    Missing quotes around the prompt message. -> Option B
  4. Quick Check:

    Prompt message needs quotes [OK]
Hint: Always quote prompt text after -p [OK]
Common Mistakes:
  • Not quoting prompt text with spaces
  • Thinking variable names are restricted
  • Misreading echo syntax as error
5. You want to write a script that asks the user for their favorite color and then prints "Your favorite color is COLOR" where COLOR is their input. Which script correctly does this using read -p?
hard
A. read -p "Favorite color?" color echo "Your favorite color is $color"
B. read color -p "Favorite color?" echo "Your favorite color is $color"
C. read -p Favorite color? color echo "Your favorite color is $color"
D. read -prompt "Favorite color?" color echo "Your favorite color is $color"

Solution

  1. Step 1: Verify the correct read -p syntax

    The prompt message must be quoted and -p must come before the prompt string and variable.
  2. Step 2: Check each option

    read -p "Favorite color?" color echo "Your favorite color is $color" uses read -p "Favorite color?" color which is correct. Others have wrong order, missing quotes, or invalid flags.
  3. Final Answer:

    read -p "Favorite color?" color echo "Your favorite color is $color" -> Option A
  4. Quick Check:

    Correct syntax with quotes and variable last [OK]
Hint: Use read -p "prompt" variable with quotes [OK]
Common Mistakes:
  • Placing variable before -p
  • Not quoting prompt text
  • Using invalid flags like -prompt
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