Bird
Raised Fist0
PowerShellscripting~10 mins

String type and interpolation in PowerShell - Interactive Code Practice

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

Complete the code to create a double-quoted string that supports variable interpolation.

PowerShell
$name = 'Alice'
$message = [1]"Hello, $name!"
Drag options to blanks, or click blank then click option'
A"
B$
C'
D`
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes which do not interpolate variables.
Using backticks which are escape characters, not string delimiters.
2fill in blank
medium

Complete the code to create a here-string that preserves line breaks.

PowerShell
$text = @[1]
This is line one.
This is line two.
@
Drag options to blanks, or click blank then click option'
A"""
B@"
C@'
D"
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes @' which create literal strings without variable interpolation.
Using triple quotes which are not valid in PowerShell.
3fill in blank
hard

Fix the error in the string interpolation to correctly include the variable value.

PowerShell
$count = 5
Write-Output "You have [1] items."
Drag options to blanks, or click blank then click option'
A'$count'
B$count
C${count}
D`$count
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes which prevent interpolation.
Using backtick which escapes the dollar sign instead of interpolating.
4fill in blank
hard

Fill both blanks to create a string that includes a variable and a calculated expression.

PowerShell
$price = 10
$quantity = 3
$total = [1]"Total cost: $[2]"
Drag options to blanks, or click blank then click option'
A"
Bprice * quantity
Cprice + quantity
D'
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes which prevent interpolation.
Using addition instead of multiplication for total cost.
5fill in blank
hard

Fill all three blanks to create a here-string with variable interpolation and a newline.

PowerShell
$user = 'Bob'
$message = @[1]
Hello, $[2]!
Welcome to the system.
[3]
Drag options to blanks, or click blank then click option'
A"
Buser
C"@
D'@
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes '@ which create literal strings without interpolation.
Forgetting to close the here-string properly.

Practice

(1/5)
1. Which type of quotes in PowerShell allows variable values to be inserted inside a string using interpolation?
easy
A. No quotes
B. Single quotes (')
C. Backticks (`)
D. Double quotes (")

Solution

  1. Step 1: Understand string quoting in PowerShell

    PowerShell uses double quotes to allow variable interpolation inside strings.
  2. Step 2: Compare single vs double quotes

    Single quotes treat the content literally, so variables are not replaced by their values.
  3. Final Answer:

    Double quotes (") -> Option D
  4. Quick Check:

    Double quotes allow interpolation = D [OK]
Hint: Use double quotes to insert variables inside strings [OK]
Common Mistakes:
  • Using single quotes expecting variable replacement
  • Confusing backticks with quotes
  • Thinking no quotes allow interpolation
2. Which of the following is the correct syntax to interpolate the variable $name inside a string in PowerShell?
easy
A. "Hello, $name!"
B. 'Hello, $name!'
C. `Hello, $name!`
D. Hello, $name!

Solution

  1. Step 1: Identify correct string syntax for interpolation

    Double quotes are needed to allow variable interpolation in PowerShell strings.
  2. Step 2: Check each option

    "Hello, $name!" uses double quotes correctly; 'Hello, $name!' uses single quotes (no interpolation); `Hello, $name!` uses backticks (escape character, not string quotes); Hello, $name! is missing quotes.
  3. Final Answer:

    "Hello, $name!" -> Option A
  4. Quick Check:

    Double quotes for interpolation = A [OK]
Hint: Remember: double quotes for variables inside strings [OK]
Common Mistakes:
  • Using single quotes expecting variable to expand
  • Using backticks as string delimiters
  • Omitting quotes around strings
3. What will be the output of the following PowerShell code?
$name = "Alice"
$message = "Hello, $name!"
Write-Output $message
medium
A. Hello, !
B. Hello, $name!
C. Hello, Alice!
D. Error: Variable not defined

Solution

  1. Step 1: Understand variable assignment

    The variable $name is assigned the string "Alice".
  2. Step 2: Analyze string interpolation

    The string in $message uses double quotes, so $name is replaced by its value "Alice".
  3. Final Answer:

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

    Double quotes replace $name with Alice = A [OK]
Hint: Double quotes replace variables with their values [OK]
Common Mistakes:
  • Expecting single quotes to interpolate variables
  • Thinking variable names print literally
  • Confusing variable assignment with output
4. Identify the error in this PowerShell code snippet:
$user = 'Bob'
$message = 'Welcome, $user!'
Write-Output $message
medium
A. Variable $user is not defined
B. Single quotes prevent variable interpolation
C. Missing semicolon after assignment
D. Write-Output cannot print variables

Solution

  1. Step 1: Check variable definition

    $user is defined correctly with single quotes, so no error there.
  2. Step 2: Analyze string interpolation

    The $message string uses single quotes, so $user is not replaced by its value but printed literally.
  3. Final Answer:

    Single quotes prevent variable interpolation -> Option B
  4. Quick Check:

    Single quotes block interpolation = B [OK]
Hint: Use double quotes to enable variable replacement [OK]
Common Mistakes:
  • Thinking single quotes allow interpolation
  • Expecting semicolons in PowerShell
  • Assuming Write-Output can't print variables
5. You want to create a greeting message that includes a user's name stored in $userName and their age stored in $age. Which of the following PowerShell commands correctly uses string interpolation to produce:
Hello, Alice! You are 30 years old.
hard
A. $greeting = "Hello, $userName! You are $age years old."
B. $greeting = 'Hello, $userName! You are $age years old.'
C. $greeting = "Hello, $userName! You are ${age} years old."
D. $greeting = "Hello, ${userName}! You are ${age} years old."

Solution

  1. Step 1: Understand variable interpolation with complex variables

    Variables inside strings can be interpolated directly or with braces ${} to clarify boundaries.
  2. Step 2: Evaluate each option

    $greeting = "Hello, $userName! You are $age years old." works correctly and is the most common usage; $greeting = 'Hello, $userName! You are $age years old.' uses single quotes (no interpolation); $greeting = "Hello, $userName! You are ${age} years old." uses braces for $age which is valid but unnecessary here; $greeting = "Hello, ${userName}! You are ${age} years old." uses braces for both variables which is valid but less common.
  3. Final Answer:

    $greeting = "Hello, $userName! You are $age years old." -> Option A
  4. Quick Check:

    Direct interpolation without braces is common and correct = A [OK]
Hint: Use ${} to clearly separate variables in strings when needed [OK]
Common Mistakes:
  • Using single quotes expecting interpolation
  • Not using braces when variable names are ambiguous
  • Mixing variable syntax incorrectly
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