PowerShell: Check if TPM Is Present
Need a quick yes/no check for whether a machine has a TPM chip - without digging through a full CIM output? This one-liner reads the status directly and clearly.
Prerequisites:
- Privileges: Run as Administrator
- Module: Built-in, no import needed
Quick Command:
Get-Tpm
Example Output:
TpmPresent : True
TpmReady : True
TpmEnabled : True
TpmActivated : True
ManagedAuthLevel : Full
OwnerClearDisabled : True
AutoProvisioning : Enabled
LockedOut : False
📦
Want all of them at once?
Get every free one-liner from this blog in a single downloadable bundle organized by category, each with full comment-based help. No more copy-pasting one at a time.
Get every free one-liner from this blog in a single downloadable bundle organized by category, each with full comment-based help. No more copy-pasting one at a time.
How It Works:
- Get-Tpm is a purpose-built cmdlet from the TrustedPlatformModule module - a simpler, more readable alternative to querying the raw Win32_Tpm CIM class directly.
- TpmPresent gives the direct yes/no answer to "does this machine have a TPM chip" - True or False.
- TpmReady and TpmEnabled show whether the chip is properly configured and turned on, not just physically present.
Pro Tip:
On some virtual machines (including certain Parallels configurations), this command can throw an error like A specified output buffer is too small due to how the virtual TPM is emulated - this is a VM-specific quirk, not an indication that something is wrong with your command.