Bird
Raised Fist0
PowerShellscripting~5 mins

Formatting with -f operator in PowerShell - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the -f operator do in PowerShell?
The -f operator formats strings by replacing placeholders with values, similar to filling blanks in a sentence.
Click to reveal answer
beginner
How do you use the -f operator to insert a variable into a string?
Use curly braces with numbers as placeholders in the string, then after -f list the variables in order. Example: "Hello, {0}!" -f $name
Click to reveal answer
beginner
What will this code output? `"{0} + {1} = {2}" -f 2, 3, (2+3)`
It outputs: "2 + 3 = 5" because {0} is 2, {1} is 3, and {2} is the sum 5.
Click to reveal answer
intermediate
Can you format numbers with decimals using -f? How?
Yes, by adding format specifiers inside the placeholder. Example: "{0:N2}" -f 3.14159 outputs "3.14" (2 decimals).
Click to reveal answer
intermediate
What happens if you use a placeholder index that does not have a matching argument in -f?
PowerShell throws an error because it expects a value for every placeholder index used in the string.
Click to reveal answer
What does the placeholder {0} represent in a string using -f?
AThe first argument after -f
BThe last argument after -f
CA variable named 0
DA comment in the string
How would you format the number 1234.5678 to show only two decimals using -f?
A"{0:2}" -f 1234.5678
B"{0:F}" -f 1234.5678
C"{0:N2}" -f 1234.5678
D"{0:D2}" -f 1234.5678
What will this output? `"{1} and {0}" -f "apple", "banana"`
Aapple and banana
Bbanana and apple
C{1} and {0}
DError
If you forget to provide enough arguments for placeholders, what happens?
APowerShell fills missing with empty strings
BPowerShell repeats last argument
CPowerShell ignores extra placeholders
DPowerShell throws an error
Which of these is a correct use of -f to format a greeting with a name variable?
A"Hello, {0}!" -f $name
B"Hello, $name!" -f
C"Hello, {name}!" -f $name
D"Hello, {1}!" -f $name
Explain how the -f operator works in PowerShell and give a simple example.
Think of filling blanks in a sentence with values.
You got /3 concepts.
    Describe how to format a number to two decimal places using the -f operator.
    Look inside the curly braces for formatting instructions.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the -f operator do in PowerShell?
      easy
      A. It formats a string by replacing placeholders with values.
      B. It runs a loop over a list of items.
      C. It defines a function in a script.
      D. It comments out a line of code.

      Solution

      1. Step 1: Understand the role of -f operator

        The -f operator is used to format strings by inserting values into placeholders like {0}, {1}.
      2. Step 2: Compare with other options

        Options A, C, and D describe unrelated PowerShell features: loops, functions, and comments.
      3. Final Answer:

        It formats a string by replacing placeholders with values. -> Option A
      4. Quick Check:

        Formatting strings = B [OK]
      Hint: Remember: -f means format string with placeholders [OK]
      Common Mistakes:
      • Confusing -f with loop or function syntax
      • Thinking -f comments code
      • Assuming -f runs commands
      2. Which of the following is the correct syntax to insert two variables $name and $age into a string using the -f operator?
      easy
      A. "Name: {0} Age: {1}" -f ($name $age)
      B. "Name: $name, Age: $age" -f
      C. "Name: {1}, Age: {0}" -f $name, $age
      D. "Name: {0}, Age: {1}" -f $name, $age

      Solution

      1. Step 1: Check placeholder order and variables

        Placeholders {0} and {1} correspond to the first and second variables after -f, so {0} = $name, {1} = $age.
      2. Step 2: Validate syntax correctness

        "Name: {0}, Age: {1}" -f $name, $age correctly uses commas to separate variables and matches placeholders. "Name: $name, Age: $age" -f does not use placeholders. "Name: {1}, Age: {0}" -f $name, $age swaps placeholders incorrectly. "Name: {0} Age: {1}" -f ($name $age) has invalid syntax with parentheses and missing comma.
      3. Final Answer:

        "Name: {0}, Age: {1}" -f $name, $age -> Option D
      4. Quick Check:

        Correct placeholder order and syntax = A [OK]
      Hint: Match {0}, {1} to variables in order, separate with commas [OK]
      Common Mistakes:
      • Swapping placeholder numbers incorrectly
      • Omitting commas between variables
      • Using variables directly without placeholders
      3. What is the output of this PowerShell command?
      $num = 7.12345
      "Rounded number: {0:N2}" -f $num
      medium
      A. Rounded number: 7
      B. Rounded number: 7.12345
      C. Rounded number: 7.12
      D. Rounded number: 7.1

      Solution

      1. Step 1: Understand the format specifier N2

        The format specifier 'N2' means number with 2 decimal places, rounding the value.
      2. Step 2: Apply formatting to the number

        $num = 7.12345 rounded to 2 decimals is 7.12, so the output string is "Rounded number: 7.12".
      3. Final Answer:

        Rounded number: 7.12 -> Option C
      4. Quick Check:

        Number format N2 rounds to 2 decimals = D [OK]
      Hint: N2 means number with 2 decimals, rounds automatically [OK]
      Common Mistakes:
      • Ignoring rounding and printing full decimals
      • Confusing N2 with other formats
      • Missing the decimal places
      4. Identify the error in this PowerShell formatting command:
      "User: {0}, Score: {1}" -f $user
      medium
      A. Missing second argument for {1} placeholder
      B. Incorrect placeholder syntax
      C. Variables should be inside the string, not after -f
      D. The -f operator cannot format strings

      Solution

      1. Step 1: Count placeholders and arguments

        The string has two placeholders: {0} and {1}, but only one argument ($user) is provided after -f.
      2. Step 2: Understand the consequence

        Because {1} has no matching argument, this causes an error or unexpected output.
      3. Final Answer:

        Missing second argument for {1} placeholder -> Option A
      4. Quick Check:

        Placeholders must match arguments count = C [OK]
      Hint: Count placeholders and arguments; they must match [OK]
      Common Mistakes:
      • Providing fewer arguments than placeholders
      • Misunderstanding placeholder numbering
      • Thinking variables go inside string without -f
      5. You want to format a list of product prices to show as currency with 2 decimals using the -f operator inside a loop. Which code snippet correctly formats each price stored in $prices array?
      hard
      A. foreach ($p in $prices) { "Price: $p:C2" }
      B. foreach ($p in $prices) { "Price: {0:C2}" -f $p }
      C. foreach ($p in $prices) { "Price: {1:C2}" -f $p }
      D. foreach ($p in $prices) { "Price: {0:C}" -f $prices }

      Solution

      1. Step 1: Understand the currency format specifier

        The format specifier 'C2' formats a number as currency with 2 decimal places.
      2. Step 2: Check loop and placeholder usage

        foreach ($p in $prices) { "Price: {0:C2}" -f $p } correctly loops over each price $p and formats it with {0:C2} and passes $p as argument. foreach ($p in $prices) { "Price: $p:C2" } incorrectly tries to format inside string without -f. foreach ($p in $prices) { "Price: {1:C2}" -f $p } uses {1:C2} but only one argument is passed, causing error. foreach ($p in $prices) { "Price: {0:C}" -f $prices } passes entire array $prices instead of single price.
      3. Final Answer:

        foreach ($p in $prices) { "Price: {0:C2}" -f $p } -> Option B
      4. Quick Check:

        Loop each price with {0:C2} and $p argument = A [OK]
      Hint: Use {0:C2} with single variable inside loop [OK]
      Common Mistakes:
      • Using wrong placeholder index
      • Passing whole array instead of single item
      • Trying to format without -f operator
      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