By Fatskills Exam Guides Team — the exam nerds behind 28,500+ quizzes and 2.1M practice questions across 500+ global exams.
Windows Tools are built-in utilities, command-line interfaces (CLI), and scripting environments in Windows that automate tasks, manage systems, and streamline workflows. Businesses use them to reduce manual work, enforce consistency, and scale operations without expensive third-party software.
cmd
.bat
copy
del
ping
.ps1
regedit
Get-WmiObject -Class Win32_ComputerSystem
ipconfig
tracert
resmon
eventvwr
secpol.msc
Windows Tools operate in layers:
CreateProcess
diskpart
netsh
Example Workflow (Automated Backup): 1. Script: PowerShell script copies files from C:\Data to D:\Backup.2. Schedule: Task Scheduler runs the script daily at 1 AM.3. Log: Script writes success/failure to C:\Logs\backup.log.4. Alert: If the backup fails, send an email via Send-MailMessage.
C:\Data
D:\Backup
C:\Logs\backup.log
Send-MailMessage
Goal: Delete files older than 30 days from C:\Temp.
C:\Temp
# Get files older than 30 days $files = Get-ChildItem -Path "C:\Temp" -File | Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } # Delete them $files | Remove-Item -Force -Verbose # Log results $files.Count | Out-File -FilePath "C:\Logs\cleanup.log" -Append "$(Get-Date) - Deleted $($files.Count) files" | Out-File -FilePath "C:\Logs\cleanup.log" -Append
Expected Outcome: - Files older than 30 days are deleted.- A log entry records the count and timestamp.
taskschd.msc
Nightly Backup
C:\Scripts\backup.ps1
Expected Outcome: - The script runs automatically at 2 AM daily.
Restricted
powershell Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
RemoteSigned
C:\Users\John\Documents
powershell $documents = $env:USERPROFILE + "\Documents"
Try/Catch
powershell try { Get-Content "C:\Nonexistent\file.txt" -ErrorAction Stop } catch { Write-Warning "File not found: $_" }
Remove-Item
-WhatIf
powershell Remove-Item "C:\Temp\*" -Recurse -WhatIf
# Delete temp files older than 30 days to free space
AllSigned
Get-Credential
Select-Object *
-Filter
Where-Object
# Fast Get-ChildItem -Filter "*.log" ```
Get-Process \| Where-Object { $_.CPU -gt 50 }
schtasks /create /tn "Backup" /tr "C:\Scripts\backup.ps1" /sc daily /st 02:00
wsl --install
apt
choco install git -y
robocopy C:\Source D:\Backup /MIR /Z
diskpart → list disk → select disk 1
Scenario: A company hires 10 new employees. Instead of manually creating accounts, setting permissions, and provisioning software, IT uses: - PowerShell to create Active Directory users: powershell New-ADUser -Name "John Doe" -SamAccountName "jdoe" -Enabled $true -AccountPassword (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force) - Group Policy to deploy software (e.g., Microsoft Office) to all new hires.- Task Scheduler to run a cleanup script after 30 days (e.g., remove temporary files).
powershell New-ADUser -Name "John Doe" -SamAccountName "jdoe" -Enabled $true -AccountPassword (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force)
Scenario: A law firm needs to back up client files nightly and retain them for 6 months.- Robocopy mirrors files to a network drive: batch robocopy C:\ClientFiles \\NAS\Backups /MIR /Z /R:3 /W:5 /LOG:C:\Logs\backup.log - PowerShell deletes backups older than 6 months: powershell Get-ChildItem -Path "\\NAS\Backups" -File | Where-Object { $_.LastWriteTime -lt (Get-Date).AddMonths(-6) } | Remove-Item -Force - Task Scheduler runs the scripts daily at 1 AM.
batch robocopy C:\ClientFiles \\NAS\Backups /MIR /Z /R:3 /W:5 /LOG:C:\Logs\backup.log
powershell Get-ChildItem -Path "\\NAS\Backups" -File | Where-Object { $_.LastWriteTime -lt (Get-Date).AddMonths(-6) } | Remove-Item -Force
Scenario: A healthcare provider must ensure all machines are patched to comply with HIPAA.- PowerShell checks for missing updates: powershell Install-Module -Name PSWindowsUpdate -Force Get-WindowsUpdate -Install -AcceptAll - Group Policy enforces automatic updates: - Computer Configuration → Administrative Templates → Windows Components → Windows Update → Configure Automatic Updates.- Event Viewer audits update failures.
powershell Install-Module -Name PSWindowsUpdate -Force Get-WindowsUpdate -Install -AcceptAll
Computer Configuration → Administrative Templates → Windows Components → Windows Update → Configure Automatic Updates
You need to delete all .tmp files older than 7 days from C:\Temp. Which PowerShell command is correct?
.tmp
A)
Remove-Item -Path "C:\Temp\*.tmp" -Recurse
B)
Get-ChildItem -Path "C:\Temp" -Filter "*.tmp" | Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-7) } | Remove-Item -Force
C)
Delete-Item -Path "C:\Temp\*.tmp" -OlderThan 7
D)
Get-ChildItem -Path "C:\Temp\*.tmp" | Remove-Item -Force
Correct Answer: B- Explanation: Option B correctly filters files by age (LastWriteTime) before deleting. The -Filter parameter is efficient, and Where-Object ensures only old files are removed.- Why the Distractors Are Tempting: - A: Deletes all .tmp files, not just old ones. - C: Delete-Item doesn’t have an -OlderThan parameter. - D: Deletes all .tmp files without checking age.
LastWriteTime
Delete-Item
-OlderThan
Your script fails with "Access Denied" when trying to modify a file in C:\Program Files. What’s the most likely cause and fix?
C:\Program Files
A) The file is locked by another process. Use handle.exe to kill the process.B) The script isn’t running as Administrator. Right-click PowerShell and select "Run as Administrator".C) The file is read-only. Use Set-ItemProperty -Path "C:\Program Files\file.txt" -Name IsReadOnly -Value $false.D) The file path contains spaces. Use quotes: "C:\Program Files\file.txt".
handle.exe
Set-ItemProperty -Path "C:\Program Files\file.txt" -Name IsReadOnly -Value $false
"C:\Program Files\file.txt"
Correct Answer: B- Explanation: C:\Program Files is a protected directory. Scripts need admin rights to modify files here.- Why the Distractors Are Tempting: - A: Possible, but less likely than a permissions issue. - C: Read-only is a common issue, but not the root cause here. - D: Paths with spaces do need quotes, but this isn’t the error message you’d see.
You want to schedule a PowerShell script to run every Monday at 3 AM. Which tool should you use?
A) Windows Task Scheduler B) Group Policy (GPO) C) cron via WSL D) Start-Process in a loop
cron
Start-Process
Correct Answer: A- Explanation: Task Scheduler is the native tool for scheduling tasks in Windows.- Why the Distractors Are Tempting: - B: GPO can deploy scripts, but not schedule them at specific times. - C: cron works in Linux (WSL), but it’s not the Windows-native solution. - D: Start-Process launches a process once, not on a schedule.
dir
cd
Downloads
Get-
Set-
New-
Get-Process | Select-Object Name, CPU | Sort-Object CPU -Descending
-ErrorAction
Invoke-Command -ComputerName Server01 -ScriptBlock { Get-Service }
Join 4M+ learners. Unlock unlimited quizzes, wrong-answer tracking, flashcards + reminders, study guides, and 1-on-1 challenges.