Bird
Raised Fist0
PowerShellscripting~15 mins

Importing modules in PowerShell - Mini Project: Build & Apply

Choose your learning style10 modes available
Importing modules
📖 Scenario: You are writing a PowerShell script to use extra commands that are not built-in. These commands come from a module. You want to learn how to bring that module into your script so you can use its commands.
🎯 Goal: Learn how to import a PowerShell module called Microsoft.PowerShell.Utility and then use a command from it.
📋 What You'll Learn
Create a variable with the module name
Import the module using the variable
Use a command from the imported module
Print the result of the command
💡 Why This Matters
🌍 Real World
PowerShell modules add extra commands that help automate tasks. Importing modules lets you use these commands in your scripts.
💼 Career
Many IT and automation jobs require using PowerShell modules to manage systems and automate workflows efficiently.
Progress0 / 4 steps
1
Create a variable with the module name
Create a variable called $moduleName and set it to the string 'Microsoft.PowerShell.Utility'.
PowerShell
Hint

Use = to assign the string to the variable.

2
Import the module using the variable
Use the Import-Module command with the variable $moduleName to import the module.
PowerShell
Hint

Write Import-Module $moduleName to load the module.

3
Use a command from the imported module
Use the Get-Random command to get a random number between 1 and 10 and save it in a variable called $randomNumber.
PowerShell
Hint

Use Get-Random -Minimum 1 -Maximum 11 to get a number from 1 to 10.

4
Print the result
Print the value of the variable $randomNumber using Write-Output.
PowerShell
Hint

Use Write-Output $randomNumber to show the number.

Practice

(1/5)
1. What does the Import-Module command do in PowerShell?
easy
A. Loads a module so you can use its commands in the current session
B. Deletes a module from your computer
C. Creates a new module file
D. Lists all installed modules on your system

Solution

  1. Step 1: Understand the purpose of Import-Module

    The Import-Module command is used to load a module into the current PowerShell session so its commands become available.
  2. Step 2: Compare options with the command's function

    Only Loads a module so you can use its commands in the current session correctly describes loading a module for use. Other options describe unrelated actions.
  3. Final Answer:

    Loads a module so you can use its commands in the current session -> Option A
  4. Quick Check:

    Import-Module loads commands [OK]
Hint: Import-Module means load commands to use now [OK]
Common Mistakes:
  • Thinking Import-Module deletes or creates modules
  • Confusing Import-Module with Get-Module
  • Assuming Import-Module lists modules
2. Which of the following is the correct syntax to import a module named MyTools in PowerShell?
easy
A. Import Module MyTools
B. ImportModule MyTools
C. Import-Module -Module MyTools
D. Import-Module MyTools

Solution

  1. Step 1: Recall the basic Import-Module syntax

    The simplest correct syntax is Import-Module ModuleName without extra parameters.
  2. Step 2: Check each option's syntax

    Import-Module MyTools matches the correct syntax exactly. The other options have syntax errors: space between Import and Module, invalid parameter -Module, and missing hyphen before Module.
  3. Final Answer:

    Import-Module MyTools -> Option D
  4. Quick Check:

    Use Import-Module followed by module name [OK]
Hint: Use Import-Module followed by module name [OK]
Common Mistakes:
  • Adding spaces in command name like 'Import Module'
  • Missing dash in Import-Module
  • Using wrong parameter names
3. What will be the output of this PowerShell code?
Import-Module Microsoft.PowerShell.Utility
Get-Command -Module Microsoft.PowerShell.Utility | Select-Object -First 1 -ExpandProperty Name
medium
A. Add-Type
B. Get-Process
C. Format-Table
D. Sort-Object

Solution

  1. Step 1: Understand the commands used

    The code imports the Utility module, then lists commands from it, selecting the first command's name.
  2. Step 2: Identify the first command in the Utility module

    The first command in Microsoft.PowerShell.Utility (in export order) is 'Add-Type'.
  3. Final Answer:

    Add-Type -> Option A
  4. Quick Check:

    First command in Utility module is Add-Type [OK]
Hint: First command in Utility module is Add-Type [OK]
Common Mistakes:
  • Assuming output is a command not in the module
  • Confusing command names with similar ones
  • Not expanding property to get name
4. You run Import-Module MyModule but get an error: ModuleNotFoundException. What is the most likely cause?
medium
A. You used the wrong command; it should be Load-Module
B. You forgot to run PowerShell as administrator
C. The module name is misspelled or not installed
D. The module is already imported

Solution

  1. Step 1: Understand the error meaning

    ModuleNotFoundException means PowerShell cannot find the module by that name.
  2. Step 2: Identify common causes

    The most common cause is a misspelled module name or the module is not installed on the system.
  3. Final Answer:

    The module name is misspelled or not installed -> Option C
  4. Quick Check:

    ModuleNotFound means module missing or misspelled [OK]
Hint: ModuleNotFound means module missing or name wrong [OK]
Common Mistakes:
  • Assuming admin rights always fix this error
  • Using wrong command name like Load-Module
  • Thinking module is imported already causes error
5. You want to import a module only if it is not already loaded in your PowerShell session. Which script snippet correctly does this?
hard
A. Import-Module MyModule -Force
B. if (-not (Get-Module -Name MyModule)) { Import-Module MyModule }
C. Get-Module MyModule | Import-Module
D. Import-Module MyModule -SkipIfLoaded

Solution

  1. Step 1: Understand how to check if a module is loaded

    Get-Module -Name MyModule returns the module if loaded, or nothing if not.
  2. Step 2: Use conditional to import only if not loaded

    The condition -not (Get-Module -Name MyModule) checks if module is missing, then imports it.
  3. Step 3: Evaluate other options

    Import-Module MyModule -Force forces import regardless. Piping Get-Module output to Import-Module is invalid syntax. -SkipIfLoaded is not a valid parameter.
  4. Final Answer:

    if (-not (Get-Module -Name MyModule)) { Import-Module MyModule } -> Option B
  5. Quick Check:

    Check with Get-Module before Import-Module [OK]
Hint: Check Get-Module before Import-Module to avoid duplicates [OK]
Common Mistakes:
  • Using Import-Module -Force to avoid checking
  • Trying to pipe Get-Module output to Import-Module
  • Using non-existent parameters like -SkipIfLoaded
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