Unit 6 - Practice Quiz
1 Which PowerShell cmdlet is primarily used to load a module into the current session?
Load-Module
Import-Module
Get-Module
Install-Module
2 Which environment variable stores the paths where PowerShell looks for modules?
$env:PSHome
$env:ModulePath
$env:PSModulePath
$env:Path
3 What is the file extension for a PowerShell Module Manifest file?
.xml
.ps1
.psd1
.psm1
4 Which cmdlet is used to import data from a Comma-Separated Value file and create objects from it?
Read-Csv
ConvertFrom-Csv
Import-Csv
Get-Content
5 When converting a PowerShell object to JSON format, which cmdlet is used?
Out-Json
Format-Json
ConvertTo-Json
Export-Json
6 Which cmdlet allows you to read an XML file and navigate its nodes as properties?
[xml](Get-Content path)
Import-Xml
Get-Content -AsXml
Select-Xml
7 Which cmdlet is most appropriate for prompting a user to input a password securely?
Read-Input -Secure
Get-Credential
Read-Host -AsSecureString
Read-Host -MaskInput
8 Which cmdlet creates a graphical window allowing users to select one or more items from a list?
Select-Object -UI
Read-Choice
Show-Menu
Out-GridView -PassThru
9 In a text-based menu script, which statement is most efficient for handling multiple specific user choices?
switch
foreach
if...else
while
10 Which cmdlet is used to stop a running Windows service?
Stop-Service
Disable-Service
End-Service
Kill-Service
11 To retrieve a list of all processes currently consuming more than 100MB of memory, which command structure is correct?
Get-Process | Filter-Object { $_.Memory -gt 100MB }
Get-Process | Where-Object { $_.WorkingSet -gt 100MB }
Select-Process -Memory > 100MB
Get-Process -Memory 100MB
12 Which PowerShell Drive (PSDrive) allows direct access to the Windows Registry Local Machine hive?
Registry::LocalMachine
HKLM:
C:\Windows\System32\Config
RegLM:
13 Which cmdlet is used to modify a specific value inside a registry key?
New-Item
Update-Item
Set-ItemProperty
Set-RegistryKey
14 Which cmdlet is required to enable PowerShell Remoting on a local computer?
Enable-PSRemoting
Allow-RemoteAccess
Set-ExecutionPolicy RemoteSigned
Start-Remoting
15 Which cmdlet starts an interactive 1-to-1 remote session with a single computer?
New-PSSession
Enter-PSSession
Invoke-Command
Connect-Server
16 What protocol does PowerShell Remoting primarily rely on?
17 Which cmdlet allows you to run a script block on multiple remote computers simultaneously?
Start-Job
Get-RemoteObject
Invoke-Command
Enter-PSSession
18 When working with Active Directory in PowerShell, which cmdlet creates a new user account?
New-ADUser
Create-User
Set-ADUser
Add-ADUser
19
Which parameter of Get-ADUser allows you to find users based on specific criteria (e.g., Department)?
-Query
-Search
-Where
-Filter
20 Which command adds an existing user to an Active Directory security group?
Set-ADGroup
Add-ADGroupMember
Join-ADGroup
Update-ADGroup
21
What is the primary benefit of using Start-Job in PowerShell?
22 Which cmdlet retrieves the output data from a completed background job?
Receive-Job
Show-Job
Get-Job
Read-Job
23 How do you define a Scheduled Task Action in PowerShell?
New-ScheduledTaskAction
Start-Task
Register-ScheduledTask
Set-TaskAction
24
In an Advanced Function, which attribute enables support for common parameters like -Verbose and -WhatIf?
[Function()]
[CmdletBinding()]
[Parameter()]
[Advanced()]
25 Which validation attribute ensures a parameter value is selected from a predefined list?
[ValidateList()]
[ValidateRange()]
[ValidatePattern()]
[ValidateSet()]
26 How do you make a function parameter mandatory?
[ValidateNotNull()]
[Required]
param(mandatory)
[Parameter(Mandatory=$true)]
27 Which .NET class is commonly loaded to create Windows Forms (WinForms) GUIs in PowerShell?
PowerShell.Forms
System.Windows.GUI
System.Windows.Forms
System.Drawing.UI
28 When creating a GUI, what method must be called on a Form object to display it to the user?
$form.Open()
$form.ShowDialog()
true
$form.Render()
29 In a deployment script, which variable represents the directory where the current script is located?
$PWD
$HOME
$PSHome
$PSScriptRoot
30 Which block allows you to handle errors gracefully in automation scripts?
do...while
error...resume
try...catch...finally
if...else
31 Which cmdlet is used to write entries to the Windows Event Log?
Write-EventLog
Set-Event
Write-Host
Add-LogEntry
32 If you need to verify if a file or folder exists before attempting to copy it, which cmdlet should be used?
Find-Path
Check-File
Test-Path
Get-Item
33 In a user management script, how do you generate a random password using a .NET class?
Get-Random
New-Guid
[System.Web.Security.Membership]::GeneratePassword()
Convert-SecureString
34 Which operator is used to check if a string matches a Regular Expression (Regex)?
-match
-eq
-like
-contains
35 In a monitoring script, if you want to calculate the percentage of free disk space, which formula is correct (conceptually)?
36 What is the purpose of Splatting in PowerShell scripts?
37 When writing an automation script, which variable refers to the current object in the pipeline?
$OBJ
PSItem
$THIS
$CURRENT
38 Which XML method would you use to save changes made to an XML object back to a file?
Set-Content
Export-Clixml
Write-Xml
$xml.Save("path")
39
What is the difference between Write-Host and Write-Output?
Write-Host sends to the console only; Write-Output sends data to the pipeline.
Write-Output is deprecated.
Write-Host sends data to the pipeline; Write-Output sends to the console only.
40 Which cmdlet is used to safely request user credentials (username and password) for a script?
Read-Host
Get-Credential
Input-User
Select-User
41 Which parameter is used to dry-run a potentially dangerous command (like deleting users) without actually executing it?
-Trial
-Test
-Confirm
-WhatIf
42 To convert a CSV file directly into an HTML report, which pipeline chain is correct?
Import-Csv | ConvertTo-Html | Out-File report.html
Import-Csv | Export-Html
Read-Csv | Out-Html
Get-Content | Format-Html
43 Which command is used to reload the current user's profile script after making changes?
Reload-Profile
Start-Profile
. $PROFILE
Update-Session
44
In a foreach (users) loop, what does $user represent?
45 Which cmdlet creates a new background job specifically for WMI/CIM queries?
Invoke-CimMethod
Get-WmiJob
Get-CimInstance (does not create job by default)
Register-WmiEvent
46 Wait, let's refine the previous thought. Which cmdlet allows running a WMI command as a job?
Start-Wmi
Run-WmiJob
Get-WmiObject -AsJob
New-WmiJob
47 Which validation attribute is best used to ensure an integer parameter falls between 1 and 100?
[ValidateSet(1,100)]
[ValidateLength(1,100)]
[ValidateRange(1,100)]
[ValidateCount(1,100)]
48 How do you create a multiline comment in PowerShell?
/* comment */
-- comment --
<# comment #>
// comment //
49 Which Logical Operator represents 'Not Equal' in PowerShell?
<>
-not
!=
-ne
50 When deploying a script, how do you bypass the default execution policy restriction for a specific process only?
Set-ExecutionPolicy Unrestricted
Remove-Item Cert:\LocalMachine
powershell.exe -ExecutionPolicy Bypass -File script.ps1
Unblock-File script.ps1