There are a number of file extensions associated with PowerShell. If you’re not aware of them they may cause you problems. You’ll commonly find these PowerShell file extensions:
.ps1 – a PowerShell script. May contain functionality such as functions or workflows. This is the most common extension
.psm1 – a PowerShell module file. Contains one or more advanced functions that are managed as a package
.psd1 – a PowerShell data file. Most commonly used as module manifest to control the .psm1 files that are loaded and the functionality that is exposed
.ps1xml – a PowerShell XML file. Used by the formatting and type systems e.g. Registry.format.ps1xml or types.ps1xml.
.pssc – a PowerShell configuration file. Created by New-PSSessionConfigurationFile when you want to define a constrained or restricted endpoint
.psrc – a PowerShell role capability file. Used during the creation of a JEA endpoint
.cdxml – a cmdlet definition XML file. Used by the PowerShell cmdlets-over-objects engine to publish a module created from a CIM class e.g. the NetAdapter module