📖 Scenario: You are learning how to use variables in PowerShell to store information. Variables help you keep data so you can use it later in your script, just like putting things in labeled boxes to find them easily.
🎯 Goal: Build a simple PowerShell script that creates a variable to store a name, then stores an age in another variable, and finally prints both values to the screen.
📋 What You'll Learn
Create a variable called $name and assign it the value "Alice"
Create a variable called $age and assign it the value 30
Print the values of $name and $age using Write-Output
💡 Why This Matters
🌍 Real World
Variables let you save user input, settings, or results in scripts to automate tasks.
💼 Career
Knowing how to store and use data in variables is a basic skill for any scripting or automation job.
Progress0 / 4 steps
1
Create a variable to store a name
Create a variable called $name and assign it the text value "Alice".
PowerShell
Hint
Use = to assign the value "Alice" to the variable $name.
2
Create a variable to store an age
Create a variable called $age and assign it the number 30.
PowerShell
Hint
Remember, numbers do not need quotes in PowerShell.
3
Print the stored name and age
Use Write-Output to print the values of $name and $age on separate lines.
PowerShell
Hint
Use Write-Output followed by the variable name to display its value.
4
Run the script to see the output
Run the script to display the stored name and age. The output should show Alice on the first line and 30 on the second line.
PowerShell
Hint
Run the script by pressing Enter or using your PowerShell environment's run command.
Practice
(1/5)
1. Why do we use variables in PowerShell scripts?
easy
A. To change the color of the text output
B. To make the script run faster
C. To delete files automatically
D. To store data so the script can use it later
Solution
Step 1: Understand the purpose of variables
Variables hold information so scripts can remember and reuse it.
Step 2: Compare options with variable purpose
Only storing data for later use matches the role of variables.
Final Answer:
To store data so the script can use it later -> Option D
Quick Check:
Variables store data = C [OK]
Hint: Variables remember data for scripts to reuse [OK]
Common Mistakes:
Thinking variables speed up scripts
Confusing variables with text formatting
Assuming variables delete files
2. Which is the correct way to create a variable named count with value 5 in PowerShell?
easy
A. $count = 5
B. count = 5
C. var count = 5
D. set count = 5
Solution
Step 1: Recall PowerShell variable syntax
Variables start with a $ sign, e.g., $count.
Step 2: Match syntax to options
Only $count = 5 uses $count = 5, which is correct in PowerShell.
Final Answer:
$count = 5 -> Option A
Quick Check:
Variables start with $ = B [OK]
Hint: Variables always start with $ in PowerShell [OK]
Common Mistakes:
Omitting the $ sign before variable name
Using other language syntax like var or set
Assigning without an equals sign
3. What will be the output of this PowerShell script?
$name = "Anna"
Write-Output $name
medium
A. $name
B. Write-Output $name
C. Anna
D. Error: Variable not defined
Solution
Step 1: Understand variable assignment
$name is assigned the string "Anna".
Step 2: Understand Write-Output behavior
Write-Output prints the value stored in $name, which is "Anna".
Final Answer:
Anna -> Option C
Quick Check:
Variable value printed = A [OK]
Hint: Write-Output prints variable's stored value [OK]
Common Mistakes:
Expecting variable name printed instead of value
Confusing output with command text
Thinking it causes an error
4. Identify the error in this PowerShell script:
$age = 30
Write-Output age
medium
A. Variable $age cannot store numbers
B. Missing $ before variable name in Write-Output
C. Write-Output cannot print variables
D. Assignment operator = is incorrect
Solution
Step 1: Check variable usage in Write-Output
Variables must have $ prefix when used, so "age" is incorrect.
Step 2: Verify other parts
$age = 30 is valid; Write-Output can print variables; = is correct.
Final Answer:
Missing $ before variable name in Write-Output -> Option B
Quick Check:
Variables need $ prefix = A [OK]
Hint: Always use $ before variable names when referencing [OK]
Common Mistakes:
Forgetting $ before variable in commands
Thinking variables can't hold numbers
Assuming Write-Output can't print variables
5. You want to store a user's name and age in variables and then print a message like "John is 25 years old." Which script correctly uses variables to do this?
hard
A. $userName = "John"
$userAge = 25
Write-Output "$userName is $userAge years old."
B. userName = "John"
userAge = 25
Write-Output "userName is userAge years old."
C. $userName = John
$userAge = "25"
Write-Output "$userName is $userAge years old."
D. $userName = "John"
$userAge = 25
Write-Output '$userName is $userAge years old.'
Solution
Step 1: Check variable assignment correctness
$userName = "John"
$userAge = 25
Write-Output "$userName is $userAge years old." assigns strings and numbers correctly with $ and quotes.
Step 2: Check output formatting
$userName = "John"
$userAge = 25
Write-Output "$userName is $userAge years old." uses double quotes allowing variable values to appear in output.
Step 3: Identify errors in other options
One option uses single quotes which do not expand variables; another misses $ signs and prints variable names literally; another misses quotes around John causing a syntax error.
Final Answer:
$userName = "John"
$userAge = 25
Write-Output "$userName is $userAge years old." -> Option A
Quick Check:
Use $ and double quotes for variable output = D [OK]
Hint: Use $ and double quotes to show variable values in strings [OK]
Common Mistakes:
Forgetting $ before variable names
Using single quotes which don't expand variables
Not quoting string values properly
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.