List Installed Printers with Get-Printer
See every printer Windows knows about — name, driver, port, and status — in a single PowerShell table.
01Command
$ Get-Printer | Format-Table Name, DriverName, PortName, PrinterStatus02What it does
Printer names have to match exactly for Remove-PrintJob, SetDefaultPrinter, and Out-Printer, and this cmdlet is the source of truth for those names. DriverName identifies which driver package each queue uses (useful when a driver update breaks one printer), PortName shows whether it is USB (USB001-style), TCP/IP, or a redirect, and PrinterStatus hints at offline/error states. On a machine littered with leftover Microsoft Print to PDF / OneNote entries, it also makes it obvious what can be removed with Remove-Printer. Run it in an elevated shell to see everything, and pair with Get-PrintJob to inspect queues.
03Risk
04Undo
✓No undo needed — this command does not change persistent state.
05Sources
- Get-PrinterEvidence: Documents Get-Printer for enumerating installed printers with Name, DriverName, PortName, and PrinterStatus properties.
Last verified: 2026-09-18 · Category: System & Settings
06Related solutions
Search inside text files and logs with regex, returning file, line number and match.
Create or update a .zip from any files or folder contents straight from PowerShell.
A built-in PowerShell one-liner that answers 'is port 5432/3389/443 actually open through this network?' — no telnet client needed.