lib/rouge/lexers/powershell.rb in rouge-3.5.1 vs lib/rouge/lexers/powershell.rb in rouge-3.6.0

- old
+ new

@@ -1,679 +1,225 @@ # -*- coding: utf-8 -*- # # frozen_string_literal: true module Rouge module Lexers - load_lexer 'shell.rb' - class Powershell < Shell + class Powershell < RegexLexer title 'powershell' desc 'powershell' tag 'powershell' aliases 'posh', 'microsoftshell', 'msshell' filenames '*.ps1', '*.psm1', '*.psd1', '*.psrc', '*.pssc' mimetypes 'text/x-powershell' + # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_cmdletbindingattribute?view=powershell-6 ATTRIBUTES = %w( - CmdletBinding ConfirmImpact DefaultParameterSetName HelpURI SupportsPaging - SupportsShouldProcess PositionalBinding + ConfirmImpact DefaultParameterSetName HelpURI PositionalBinding + SupportsPaging SupportsShouldProcess + ) + + # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-6 + AUTO_VARS = %w( + \$\$ \$\? \$\^ \$_ + \$args \$ConsoleFileName \$Error \$Event \$EventArgs \$EventSubscriber + \$ExecutionContext \$false \$foreach \$HOME \$Host \$input \$IsCoreCLR + \$IsLinux \$IsMacOS \$IsWindows \$LastExitCode \$Matches \$MyInvocation + \$NestedPromptLevel \$null \$PID \$PROFILE \$PSBoundParameters \$PSCmdlet + \$PSCommandPath \$PSCulture \$PSDebugContext \$PSHOME \$PSItem + \$PSScriptRoot \$PSSenderInfo \$PSUICulture \$PSVersionTable \$PWD + \$REPORTERRORSHOWEXCEPTIONCLASS \$REPORTERRORSHOWINNEREXCEPTION + \$REPORTERRORSHOWSOURCE \$REPORTERRORSHOWSTACKTRACE + \$SENDER \$ShellId \$StackTrace \$switch \$this \$true ).join('|') + # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_reserved_words?view=powershell-6 KEYWORDS = %w( - Begin Exit Process Break Filter Return Catch Finally Sequence Class For - Switch Continue ForEach Throw Data From Trap Define Function Try Do If - Until DynamicParam In Using Else InlineScript Var ElseIf Parallel While - End Param Workflow + assembly exit process base filter public begin finally return break for + sequence catch foreach static class from switch command function throw + configuration hidden trap continue if try data in type define + inlinescript until do interface using dynamicparam module var else + namespace while elseif parallel workflow end param enum private ).join('|') + # https://devblogs.microsoft.com/scripting/powertip-find-a-list-of-powershell-type-accelerators/ + # ([PSObject].Assembly.GetType("System.Management.Automation.TypeAccelerators")::Get).Keys -join ' ' KEYWORDS_TYPE = %w( - bool byte char decimal double float int long object sbyte - short string uint ulong ushort + Alias AllowEmptyCollection AllowEmptyString AllowNull ArgumentCompleter + array bool byte char CmdletBinding datetime decimal double DscResource + float single guid hashtable int int32 int16 long int64 ciminstance + cimclass cimtype cimconverter IPEndpoint NullString OutputType + ObjectSecurity Parameter PhysicalAddress pscredential PSDefaultValue + pslistmodifier psobject pscustomobject psprimitivedictionary ref + PSTypeNameAttribute regex DscProperty sbyte string SupportsWildcards + switch cultureinfo bigint securestring timespan uint16 uint32 uint64 + uri ValidateCount ValidateDrive ValidateLength ValidateNotNull + ValidateNotNullOrEmpty ValidatePattern ValidateRange ValidateScript + ValidateSet ValidateTrustedData ValidateUserDrive version void + ipaddress DscLocalConfigurationManager WildcardPattern X509Certificate + X500DistinguishedName xml CimSession adsi adsisearcher wmiclass wmi + wmisearcher mailaddress scriptblock psvariable type psmoduleinfo + powershell runspacefactory runspace initialsessionstate psscriptmethod + psscriptproperty psnoteproperty psaliasproperty psvariableproperty ).join('|') OPERATORS = %w( - -split -isplit -csplit -join -is -isnot -as -eq -ieq -ceq -ne -ine - -cne -gt -igt -cgt -ge -ige -cge -lt -ilt -clt -le -ile -cle -like - -ilike -clike -notlike -inotlike -cnotlike -match -imatch -cmatch - -notmatch -inotmatch -cnotmatch -contains -icontains -ccontains - -notcontains -inotcontains -cnotcontains -replace -ireplace - -creplace -band -bor -bxor -and -or -xor \. & = \+= -= \*= \/= %= + -split -isplit -csplit -join -is -isnot -as -eq -ieq -ceq -ne -ine -cne + -gt -igt -cgt -ge -ige -cge -lt -ilt -clt -le -ile -cle -like -ilike + -clike -notlike -inotlike -cnotlike -match -imatch -cmatch -notmatch + -inotmatch -cnotmatch -contains -icontains -ccontains -notcontains + -inotcontains -cnotcontains -replace -ireplace -creplace -shl -shr -band + -bor -bxor -and -or -xor -not \+= -= \*= \/= %= ).join('|') - BUILTINS = %w( - Add-ProvisionedAppxPackage Add-WindowsFeature Apply-WindowsUnattend - Begin-WebCommitDelay Disable-PhysicalDiskIndication - Disable-StorageDiagnosticLog Enable-PhysicalDiskIndication - Enable-StorageDiagnosticLog End-WebCommitDelay Expand-IscsiVirtualDisk - Flush-Volume Get-DiskSNV Get-PhysicalDiskSNV Get-ProvisionedAppxPackage - Get-StorageEnclosureSNV Initialize-Volume Move-SmbClient - Remove-ProvisionedAppxPackage Remove-WindowsFeature Write-FileSystemCache - Add-BCDataCacheExtension Add-DnsClientNrptRule Add-DtcClusterTMMapping - Add-EtwTraceProvider Add-InitiatorIdToMaskingSet Add-MpPreference - Add-NetEventNetworkAdapter Add-NetEventPacketCaptureProvider - Add-NetEventProvider Add-NetEventVFPProvider Add-NetEventVmNetworkAdapter - Add-NetEventVmSwitch Add-NetEventVmSwitchProvider - Add-NetEventWFPCaptureProvider Add-NetIPHttpsCertBinding Add-NetLbfoTeamMember - Add-NetLbfoTeamNic Add-NetNatExternalAddress Add-NetNatStaticMapping - Add-NetSwitchTeamMember Add-OdbcDsn Add-PartitionAccessPath Add-PhysicalDisk - Add-Printer Add-PrinterDriver Add-PrinterPort Add-RDServer Add-RDSessionHost - Add-RDVirtualDesktopToCollection Add-TargetPortToMaskingSet - Add-VirtualDiskToMaskingSet Add-VpnConnection Add-VpnConnectionRoute - Add-VpnConnectionTriggerApplication Add-VpnConnectionTriggerDnsConfiguration - Add-VpnConnectionTriggerTrustedNetwork Block-FileShareAccess - Block-SmbShareAccess Clear-AssignedAccess Clear-BCCache Clear-Disk - Clear-DnsClientCache Clear-FileStorageTier Clear-PcsvDeviceLog - Clear-StorageDiagnosticInfo Close-SmbOpenFile Close-SmbSession Compress-Archive - Configuration Connect-IscsiTarget Connect-VirtualDisk ConvertFrom-SddlString - Copy-NetFirewallRule Copy-NetIPsecMainModeCryptoSet Copy-NetIPsecMainModeRule - Copy-NetIPsecPhase1AuthSet Copy-NetIPsecPhase2AuthSet - Copy-NetIPsecQuickModeCryptoSet Copy-NetIPsecRule Debug-FileShare - Debug-MMAppPrelaunch Debug-StorageSubSystem Debug-Volume Disable-BC - Disable-BCDowngrading Disable-BCServeOnBattery - Disable-DAManualEntryPointSelection Disable-DscDebug Disable-MMAgent - Disable-NetAdapter Disable-NetAdapterBinding Disable-NetAdapterChecksumOffload - Disable-NetAdapterEncapsulatedPacketTaskOffload Disable-NetAdapterIPsecOffload - Disable-NetAdapterLso Disable-NetAdapterPacketDirect - Disable-NetAdapterPowerManagement Disable-NetAdapterQos Disable-NetAdapterRdma - Disable-NetAdapterRsc Disable-NetAdapterRss Disable-NetAdapterSriov - Disable-NetAdapterVmq Disable-NetDnsTransitionConfiguration - Disable-NetFirewallRule Disable-NetIPHttpsProfile Disable-NetIPsecMainModeRule - Disable-NetIPsecRule Disable-NetNatTransitionConfiguration - Disable-NetworkSwitchEthernetPort Disable-NetworkSwitchFeature - Disable-NetworkSwitchVlan Disable-OdbcPerfCounter - Disable-PhysicalDiskIdentification Disable-PnpDevice Disable-PSTrace - Disable-PSWSManCombinedTrace Disable-RDVirtualDesktopADMachineAccountReuse - Disable-ScheduledTask Disable-ServerManagerStandardUserRemoting - Disable-SmbDelegation Disable-StorageEnclosureIdentification - Disable-StorageHighAvailability Disable-StorageMaintenanceMode Disable-Ual - Disable-WdacBidTrace Disable-WSManTrace Disconnect-IscsiTarget - Disconnect-NfsSession Disconnect-RDUser Disconnect-VirtualDisk - Dismount-DiskImage Enable-BCDistributed Enable-BCDowngrading - Enable-BCHostedClient Enable-BCHostedServer Enable-BCLocal - Enable-BCServeOnBattery Enable-DAManualEntryPointSelection Enable-DscDebug - Enable-MMAgent Enable-NetAdapter Enable-NetAdapterBinding - Enable-NetAdapterChecksumOffload Enable-NetAdapterEncapsulatedPacketTaskOffload - Enable-NetAdapterIPsecOffload Enable-NetAdapterLso - Enable-NetAdapterPacketDirect Enable-NetAdapterPowerManagement - Enable-NetAdapterQos Enable-NetAdapterRdma Enable-NetAdapterRsc - Enable-NetAdapterRss Enable-NetAdapterSriov Enable-NetAdapterVmq - Enable-NetDnsTransitionConfiguration Enable-NetFirewallRule - Enable-NetIPHttpsProfile Enable-NetIPsecMainModeRule Enable-NetIPsecRule - Enable-NetNatTransitionConfiguration Enable-NetworkSwitchEthernetPort - Enable-NetworkSwitchFeature Enable-NetworkSwitchVlan Enable-OdbcPerfCounter - Enable-PhysicalDiskIdentification Enable-PnpDevice Enable-PSTrace - Enable-PSWSManCombinedTrace Enable-RDVirtualDesktopADMachineAccountReuse - Enable-ScheduledTask Enable-ServerManagerStandardUserRemoting - Enable-SmbDelegation Enable-StorageEnclosureIdentification - Enable-StorageHighAvailability Enable-StorageMaintenanceMode Enable-Ual - Enable-WdacBidTrace Enable-WSManTrace Expand-Archive Export-BCCachePackage - Export-BCSecretKey Export-IscsiTargetServerConfiguration - Export-ODataEndpointProxy Export-RDPersonalSessionDesktopAssignment - Export-RDPersonalVirtualDesktopAssignment Export-ScheduledTask - Find-NetIPsecRule Find-NetRoute Format-Hex Format-Volume Get-AppBackgroundTask - Get-AppvVirtualProcess Get-AppxLastError Get-AppxLog Get-AssignedAccess - Get-AutologgerConfig Get-BCClientConfiguration Get-BCContentServerConfiguration - Get-BCDataCache Get-BCDataCacheExtension Get-BCHashCache - Get-BCHostedCacheServerConfiguration Get-BCNetworkConfiguration Get-BCStatus - Get-ClusteredScheduledTask Get-DAClientExperienceConfiguration - Get-DAConnectionStatus Get-DAEntryPointTableItem Get-DedupProperties Get-Disk - Get-DiskImage Get-DiskStorageNodeView Get-DisplayResolution Get-DnsClient - Get-DnsClientCache Get-DnsClientGlobalSetting Get-DnsClientNrptGlobal - Get-DnsClientNrptPolicy Get-DnsClientNrptRule Get-DnsClientServerAddress - Get-DscConfiguration Get-DscConfigurationStatus - Get-DscLocalConfigurationManager Get-DscResource Get-Dtc - Get-DtcAdvancedHostSetting Get-DtcAdvancedSetting Get-DtcClusterDefault - Get-DtcClusterTMMapping Get-DtcDefault Get-DtcLog Get-DtcNetworkSetting - Get-DtcTransaction Get-DtcTransactionsStatistics - Get-DtcTransactionsTraceSession Get-DtcTransactionsTraceSetting - Get-EtwTraceProvider Get-EtwTraceSession Get-FileHash Get-FileIntegrity - Get-FileShare Get-FileShareAccessControlEntry Get-FileStorageTier - Get-InitiatorId Get-InitiatorPort Get-IscsiConnection Get-IscsiSession - Get-IscsiTarget Get-IscsiTargetPortal Get-IseSnippet Get-LogProperties - Get-MaskingSet Get-MMAgent Get-MpComputerStatus Get-MpPreference Get-MpThreat - Get-MpThreatCatalog Get-MpThreatDetection Get-NCSIPolicyConfiguration - Get-Net6to4Configuration Get-NetAdapter Get-NetAdapterAdvancedProperty - Get-NetAdapterBinding Get-NetAdapterChecksumOffload - Get-NetAdapterEncapsulatedPacketTaskOffload Get-NetAdapterHardwareInfo - Get-NetAdapterIPsecOffload Get-NetAdapterLso Get-NetAdapterPacketDirect - Get-NetAdapterPowerManagement Get-NetAdapterQos Get-NetAdapterRdma - Get-NetAdapterRsc Get-NetAdapterRss Get-NetAdapterSriov Get-NetAdapterSriovVf - Get-NetAdapterStatistics Get-NetAdapterVmq Get-NetAdapterVMQQueue - Get-NetAdapterVPort Get-NetCompartment Get-NetConnectionProfile - Get-NetDnsTransitionConfiguration Get-NetDnsTransitionMonitoring - Get-NetEventNetworkAdapter Get-NetEventPacketCaptureProvider - Get-NetEventProvider Get-NetEventSession Get-NetEventVFPProvider - Get-NetEventVmNetworkAdapter Get-NetEventVmSwitch Get-NetEventVmSwitchProvider - Get-NetEventWFPCaptureProvider Get-NetFirewallAddressFilter - Get-NetFirewallApplicationFilter Get-NetFirewallInterfaceFilter - Get-NetFirewallInterfaceTypeFilter Get-NetFirewallPortFilter - Get-NetFirewallProfile Get-NetFirewallRule Get-NetFirewallSecurityFilter - Get-NetFirewallServiceFilter Get-NetFirewallSetting Get-NetIPAddress - Get-NetIPConfiguration Get-NetIPHttpsConfiguration Get-NetIPHttpsState - Get-NetIPInterface Get-NetIPsecDospSetting Get-NetIPsecMainModeCryptoSet - Get-NetIPsecMainModeRule Get-NetIPsecMainModeSA Get-NetIPsecPhase1AuthSet - Get-NetIPsecPhase2AuthSet Get-NetIPsecQuickModeCryptoSet - Get-NetIPsecQuickModeSA Get-NetIPsecRule Get-NetIPv4Protocol - Get-NetIPv6Protocol Get-NetIsatapConfiguration Get-NetLbfoTeam - Get-NetLbfoTeamMember Get-NetLbfoTeamNic Get-NetNat Get-NetNatExternalAddress - Get-NetNatGlobal Get-NetNatSession Get-NetNatStaticMapping - Get-NetNatTransitionConfiguration Get-NetNatTransitionMonitoring - Get-NetNeighbor Get-NetOffloadGlobalSetting Get-NetPrefixPolicy - Get-NetQosPolicy Get-NetRoute Get-NetSwitchTeam Get-NetSwitchTeamMember - Get-NetTCPConnection Get-NetTCPSetting Get-NetTeredoConfiguration - Get-NetTeredoState Get-NetTransportFilter Get-NetUDPEndpoint Get-NetUDPSetting - Get-NetworkSwitchEthernetPort Get-NetworkSwitchFeature - Get-NetworkSwitchGlobalData Get-NetworkSwitchVlan Get-NfsClientConfiguration - Get-NfsClientgroup Get-NfsClientLock Get-NfsMappingStore Get-NfsMountedClient - Get-NfsNetgroupStore Get-NfsOpenFile Get-NfsServerConfiguration Get-NfsSession - Get-NfsShare Get-NfsSharePermission Get-NfsStatistics Get-OdbcDriver - Get-OdbcDsn Get-OdbcPerfCounter Get-OffloadDataTransferSetting Get-Partition - Get-PartitionSupportedSize Get-PcsvDevice Get-PcsvDeviceLog Get-PhysicalDisk - Get-PhysicalDiskStorageNodeView Get-PhysicalExtent - Get-PhysicalExtentAssociation Get-PlatformIdentifier Get-PnpDevice - Get-PnpDeviceProperty Get-PrintConfiguration Get-Printer Get-PrinterDriver - Get-PrinterPort Get-PrinterProperty Get-PrintJob Get-RDAvailableApp - Get-RDCertificate Get-RDConnectionBrokerHighAvailability - Get-RDDeploymentGatewayConfiguration Get-RDFileTypeAssociation - Get-RDLicenseConfiguration Get-RDPersonalSessionDesktopAssignment - Get-RDPersonalVirtualDesktopAssignment - Get-RDPersonalVirtualDesktopPatchSchedule Get-RDRemoteApp Get-RDRemoteDesktop - Get-RDServer Get-RDSessionCollection Get-RDSessionCollectionConfiguration - Get-RDSessionHost Get-RDUserSession Get-RDVirtualDesktop - Get-RDVirtualDesktopCollection Get-RDVirtualDesktopCollectionConfiguration - Get-RDVirtualDesktopCollectionJobStatus Get-RDVirtualDesktopConcurrency - Get-RDVirtualDesktopIdleCount Get-RDVirtualDesktopTemplateExportPath - Get-RDWorkspace Get-ResiliencySetting Get-ScheduledTask Get-ScheduledTaskInfo - Get-SilComputer Get-SilComputerIdentity Get-SilData Get-SilLogging - Get-SilSoftware Get-SilUalAccess Get-SilWindowsUpdate Get-SmbBandWidthLimit - Get-SmbClientConfiguration Get-SmbClientNetworkInterface Get-SmbConnection - Get-SmbDelegation Get-SmbMapping Get-SmbMultichannelConnection - Get-SmbMultichannelConstraint Get-SmbOpenFile Get-SmbServerConfiguration - Get-SmbServerNetworkInterface Get-SmbSession Get-SmbShare Get-SmbShareAccess - Get-SmbWitnessClient Get-SMCounterSample Get-SMPerformanceCollector - Get-SMServerBpaResult Get-SMServerClusterName Get-SMServerEvent - Get-SMServerFeature Get-SMServerInventory Get-SMServerService Get-StartApps - Get-StorageAdvancedProperty Get-StorageDiagnosticInfo Get-StorageEnclosure - Get-StorageEnclosureStorageNodeView Get-StorageEnclosureVendorData - Get-StorageFaultDomain Get-StorageFileServer Get-StorageFirmwareInformation - Get-StorageHealthAction Get-StorageHealthReport Get-StorageHealthSetting - Get-StorageJob Get-StorageNode Get-StoragePool Get-StorageProvider - Get-StorageReliabilityCounter Get-StorageSetting Get-StorageSubSystem - Get-StorageTier Get-StorageTierSupportedSize Get-SupportedClusterSizes - Get-SupportedFileSystems Get-TargetPort Get-TargetPortal Get-Ual - Get-UalDailyAccess Get-UalDailyDeviceAccess Get-UalDailyUserAccess - Get-UalDeviceAccess Get-UalDns Get-UalHyperV Get-UalOverview - Get-UalServerDevice Get-UalServerUser Get-UalSystemId Get-UalUserAccess - Get-VirtualDisk Get-VirtualDiskSupportedSize Get-Volume - Get-VolumeCorruptionCount Get-VolumeScrubPolicy Get-VpnConnection - Get-VpnConnectionTrigger Get-WdacBidTrace Get-WindowsFeature - Get-WindowsUpdateLog Grant-FileShareAccess Grant-NfsSharePermission - Grant-RDOUAccess Grant-SmbShareAccess Hide-VirtualDisk Import-BCCachePackage - Import-BCSecretKey Import-IscsiTargetServerConfiguration Import-IseSnippet - Import-PowerShellDataFile Import-RDPersonalSessionDesktopAssignment - Import-RDPersonalVirtualDesktopAssignment Initialize-Disk Install-Dtc - Install-WindowsFeature Invoke-AsWorkflow Invoke-RDUserLogoff Mount-DiskImage - Move-RDVirtualDesktop Move-SmbWitnessClient New-AutologgerConfig - New-DAEntryPointTableItem New-DscChecksum New-EapConfiguration - New-EtwTraceSession New-FileShare New-Guid New-IscsiTargetPortal New-IseSnippet - New-MaskingSet New-NetAdapterAdvancedProperty New-NetEventSession - New-NetFirewallRule New-NetIPAddress New-NetIPHttpsConfiguration - New-NetIPsecDospSetting New-NetIPsecMainModeCryptoSet New-NetIPsecMainModeRule - New-NetIPsecPhase1AuthSet New-NetIPsecPhase2AuthSet - New-NetIPsecQuickModeCryptoSet New-NetIPsecRule New-NetLbfoTeam New-NetNat - New-NetNatTransitionConfiguration New-NetNeighbor New-NetQosPolicy New-NetRoute - New-NetSwitchTeam New-NetTransportFilter New-NetworkSwitchVlan - New-NfsClientgroup New-NfsShare New-Partition New-PSWorkflowSession - New-RDCertificate New-RDPersonalVirtualDesktopPatchSchedule New-RDRemoteApp - New-RDSessionCollection New-RDSessionDeployment New-RDVirtualDesktopCollection - New-RDVirtualDesktopDeployment New-ScheduledTask New-ScheduledTaskAction - New-ScheduledTaskPrincipal New-ScheduledTaskSettingsSet - New-ScheduledTaskTrigger New-SmbMapping New-SmbMultichannelConstraint - New-SmbShare New-StorageFileServer New-StoragePool - New-StorageSubsystemVirtualDisk New-StorageTier New-TemporaryFile - New-VirtualDisk New-VirtualDiskClone New-VirtualDiskSnapshot New-Volume - New-VpnServerAddress Open-NetGPO Optimize-StoragePool Optimize-Volume - Publish-BCFileContent Publish-BCWebContent Publish-SilData Read-PrinterNfcTag - Register-ClusteredScheduledTask Register-DnsClient Register-IscsiSession - Register-ScheduledTask Register-StorageSubsystem Remove-AutologgerConfig - Remove-BCDataCacheExtension Remove-DAEntryPointTableItem - Remove-DnsClientNrptRule Remove-DscConfigurationDocument - Remove-DtcClusterTMMapping Remove-EtwTraceProvider Remove-EtwTraceSession - Remove-FileShare Remove-InitiatorId Remove-InitiatorIdFromMaskingSet - Remove-IscsiTargetPortal Remove-MaskingSet Remove-MpPreference Remove-MpThreat - Remove-NetAdapterAdvancedProperty Remove-NetEventNetworkAdapter - Remove-NetEventPacketCaptureProvider Remove-NetEventProvider - Remove-NetEventSession Remove-NetEventVFPProvider - Remove-NetEventVmNetworkAdapter Remove-NetEventVmSwitch - Remove-NetEventVmSwitchProvider Remove-NetEventWFPCaptureProvider - Remove-NetFirewallRule Remove-NetIPAddress Remove-NetIPHttpsCertBinding - Remove-NetIPHttpsConfiguration Remove-NetIPsecDospSetting - Remove-NetIPsecMainModeCryptoSet Remove-NetIPsecMainModeRule - Remove-NetIPsecMainModeSA Remove-NetIPsecPhase1AuthSet - Remove-NetIPsecPhase2AuthSet Remove-NetIPsecQuickModeCryptoSet - Remove-NetIPsecQuickModeSA Remove-NetIPsecRule Remove-NetLbfoTeam - Remove-NetLbfoTeamMember Remove-NetLbfoTeamNic Remove-NetNat - Remove-NetNatExternalAddress Remove-NetNatStaticMapping - Remove-NetNatTransitionConfiguration Remove-NetNeighbor Remove-NetQosPolicy - Remove-NetRoute Remove-NetSwitchTeam Remove-NetSwitchTeamMember - Remove-NetTransportFilter Remove-NetworkSwitchEthernetPortIPAddress - Remove-NetworkSwitchVlan Remove-NfsClientgroup Remove-NfsShare Remove-OdbcDsn - Remove-Partition Remove-PartitionAccessPath Remove-PhysicalDisk Remove-Printer - Remove-PrinterDriver Remove-PrinterPort Remove-PrintJob - Remove-RDDatabaseConnectionString Remove-RDPersonalSessionDesktopAssignment - Remove-RDPersonalVirtualDesktopAssignment - Remove-RDPersonalVirtualDesktopPatchSchedule Remove-RDRemoteApp Remove-RDServer - Remove-RDSessionCollection Remove-RDSessionHost - Remove-RDVirtualDesktopCollection Remove-RDVirtualDesktopFromCollection - Remove-SmbBandwidthLimit Remove-SmbMapping Remove-SmbMultichannelConstraint - Remove-SmbShare Remove-SMServerPerformanceLog Remove-StorageFileServer - Remove-StorageHealthSetting Remove-StoragePool Remove-StorageTier - Remove-TargetPortFromMaskingSet Remove-VirtualDisk - Remove-VirtualDiskFromMaskingSet Remove-VpnConnection Remove-VpnConnectionRoute - Remove-VpnConnectionTriggerApplication - Remove-VpnConnectionTriggerDnsConfiguration - Remove-VpnConnectionTriggerTrustedNetwork Rename-DAEntryPointTableItem - Rename-MaskingSet Rename-NetAdapter Rename-NetFirewallRule - Rename-NetIPHttpsConfiguration Rename-NetIPsecMainModeCryptoSet - Rename-NetIPsecMainModeRule Rename-NetIPsecPhase1AuthSet - Rename-NetIPsecPhase2AuthSet Rename-NetIPsecQuickModeCryptoSet - Rename-NetIPsecRule Rename-NetLbfoTeam Rename-NetSwitchTeam - Rename-NfsClientgroup Rename-Printer Repair-FileIntegrity Repair-VirtualDisk - Repair-Volume Reset-BC Reset-DAClientExperienceConfiguration - Reset-DAEntryPointTableItem Reset-DtcLog Reset-NCSIPolicyConfiguration - Reset-Net6to4Configuration Reset-NetAdapterAdvancedProperty - Reset-NetDnsTransitionConfiguration Reset-NetIPHttpsConfiguration - Reset-NetIsatapConfiguration Reset-NetTeredoConfiguration Reset-NfsStatistics - Reset-PhysicalDisk Reset-StorageReliabilityCounter Resize-Partition - Resize-StorageTier Resize-VirtualDisk Resolve-NfsMappedIdentity - Restart-NetAdapter Restart-PcsvDevice Restart-PrintJob Restore-DscConfiguration - Restore-NetworkSwitchConfiguration Resume-PrintJob Revoke-FileShareAccess - Revoke-NfsClientLock Revoke-NfsMountedClient Revoke-NfsOpenFile - Revoke-NfsSharePermission Revoke-SmbShareAccess Save-NetGPO - Save-NetworkSwitchConfiguration Send-EtwTraceSession Send-RDUserMessage - Set-AssignedAccess Set-AutologgerConfig Set-BCAuthentication Set-BCCache - Set-BCDataCacheEntryMaxAge Set-BCMinSMBLatency Set-BCSecretKey - Set-ClusteredScheduledTask Set-DAClientExperienceConfiguration - Set-DAEntryPointTableItem Set-Disk Set-DisplayResolution Set-DnsClient - Set-DnsClientGlobalSetting Set-DnsClientNrptGlobal Set-DnsClientNrptRule - Set-DnsClientServerAddress Set-DtcAdvancedHostSetting Set-DtcAdvancedSetting - Set-DtcClusterDefault Set-DtcClusterTMMapping Set-DtcDefault Set-DtcLog - Set-DtcNetworkSetting Set-DtcTransaction Set-DtcTransactionsTraceSession - Set-DtcTransactionsTraceSetting Set-EtwTraceProvider Set-EtwTraceSession - Set-FileIntegrity Set-FileShare Set-FileStorageTier Set-InitiatorPort - Set-IscsiChapSecret Set-LogProperties Set-MMAgent Set-MpPreference - Set-NCSIPolicyConfiguration Set-Net6to4Configuration Set-NetAdapter - Set-NetAdapterAdvancedProperty Set-NetAdapterBinding - Set-NetAdapterChecksumOffload Set-NetAdapterEncapsulatedPacketTaskOffload - Set-NetAdapterIPsecOffload Set-NetAdapterLso Set-NetAdapterPacketDirect - Set-NetAdapterPowerManagement Set-NetAdapterQos Set-NetAdapterRdma - Set-NetAdapterRsc Set-NetAdapterRss Set-NetAdapterSriov Set-NetAdapterVmq - Set-NetConnectionProfile Set-NetDnsTransitionConfiguration - Set-NetEventPacketCaptureProvider Set-NetEventProvider Set-NetEventSession - Set-NetEventVFPProvider Set-NetEventVmSwitchProvider - Set-NetEventWFPCaptureProvider Set-NetFirewallAddressFilter - Set-NetFirewallApplicationFilter Set-NetFirewallInterfaceFilter - Set-NetFirewallInterfaceTypeFilter Set-NetFirewallPortFilter - Set-NetFirewallProfile Set-NetFirewallRule Set-NetFirewallSecurityFilter - Set-NetFirewallServiceFilter Set-NetFirewallSetting Set-NetIPAddress - Set-NetIPHttpsConfiguration Set-NetIPInterface Set-NetIPsecDospSetting - Set-NetIPsecMainModeCryptoSet Set-NetIPsecMainModeRule - Set-NetIPsecPhase1AuthSet Set-NetIPsecPhase2AuthSet - Set-NetIPsecQuickModeCryptoSet Set-NetIPsecRule Set-NetIPv4Protocol - Set-NetIPv6Protocol Set-NetIsatapConfiguration Set-NetLbfoTeam - Set-NetLbfoTeamMember Set-NetLbfoTeamNic Set-NetNat Set-NetNatGlobal - Set-NetNatTransitionConfiguration Set-NetNeighbor Set-NetOffloadGlobalSetting - Set-NetQosPolicy Set-NetRoute Set-NetTCPSetting Set-NetTeredoConfiguration - Set-NetUDPSetting Set-NetworkSwitchEthernetPortIPAddress - Set-NetworkSwitchPortMode Set-NetworkSwitchPortProperty - Set-NetworkSwitchVlanProperty Set-NfsClientConfiguration Set-NfsClientgroup - Set-NfsMappingStore Set-NfsNetgroupStore Set-NfsServerConfiguration - Set-NfsShare Set-OdbcDriver Set-OdbcDsn Set-Partition - Set-PcsvDeviceBootConfiguration Set-PcsvDeviceNetworkConfiguration - Set-PcsvDeviceUserPassword Set-PhysicalDisk Set-PrintConfiguration Set-Printer - Set-PrinterProperty Set-RDActiveManagementServer Set-RDCertificate - Set-RDClientAccessName Set-RDConnectionBrokerHighAvailability - Set-RDDatabaseConnectionString Set-RDDeploymentGatewayConfiguration - Set-RDFileTypeAssociation Set-RDLicenseConfiguration - Set-RDPersonalSessionDesktopAssignment Set-RDPersonalVirtualDesktopAssignment - Set-RDPersonalVirtualDesktopPatchSchedule Set-RDRemoteApp Set-RDRemoteDesktop - Set-RDSessionCollectionConfiguration Set-RDSessionHost - Set-RDVirtualDesktopCollectionConfiguration Set-RDVirtualDesktopConcurrency - Set-RDVirtualDesktopIdleCount Set-RDVirtualDesktopTemplateExportPath - Set-RDWorkspace Set-ResiliencySetting Set-ScheduledTask Set-SilLogging - Set-SmbBandwidthLimit Set-SmbClientConfiguration Set-SmbPathAcl - Set-SmbServerConfiguration Set-SmbShare Set-StorageFileServer - Set-StorageHealthSetting Set-StoragePool Set-StorageProvider Set-StorageSetting - Set-StorageSubSystem Set-StorageTier Set-VirtualDisk Set-Volume - Set-VolumeScrubPolicy Set-VpnConnection Set-VpnConnectionIPsecConfiguration - Set-VpnConnectionProxy Set-VpnConnectionTriggerDnsConfiguration - Set-VpnConnectionTriggerTrustedNetwork Show-NetFirewallRule Show-NetIPsecRule - Show-VirtualDisk Start-AppBackgroundTask Start-AppvVirtualProcess - Start-AutologgerConfig Start-Dtc Start-DtcTransactionsTraceSession Start-MpScan - Start-MpWDOScan Start-NetEventSession Start-PcsvDevice Start-ScheduledTask - Start-SilLogging Start-SMPerformanceCollector Start-StorageDiagnosticLog - Start-Trace Stop-DscConfiguration Stop-Dtc Stop-DtcTransactionsTraceSession - Stop-NetEventSession Stop-PcsvDevice Stop-RDVirtualDesktopCollectionJob - Stop-ScheduledTask Stop-SilLogging Stop-SMPerformanceCollector - Stop-StorageDiagnosticLog Stop-StorageJob Stop-Trace Suspend-PrintJob - Sync-NetIPsecRule Test-Dtc Test-NetConnection Test-NfsMappingStore - Test-RDOUAccess Test-RDVirtualDesktopADMachineAccountReuse - Unblock-FileShareAccess Unblock-SmbShareAccess Uninstall-Dtc - Uninstall-WindowsFeature Unregister-AppBackgroundTask - Unregister-ClusteredScheduledTask Unregister-IscsiSession - Unregister-ScheduledTask Unregister-StorageSubsystem Update-Disk - Update-DscConfiguration Update-HostStorageCache Update-IscsiTarget - Update-IscsiTargetPortal Update-MpSignature Update-NetIPsecRule - Update-RDVirtualDesktopCollection Update-SmbMultichannelConnection - Update-StorageFirmware Update-StoragePool Update-StorageProviderCache - Write-DtcTransactionsTraceSession Write-PrinterNfcTag Write-VolumeCache - Add-ADCentralAccessPolicyMember Add-ADComputerServiceAccount - Add-ADDomainControllerPasswordReplicationPolicy - Add-ADFineGrainedPasswordPolicySubject Add-ADGroupMember - Add-ADPrincipalGroupMembership Add-ADResourcePropertyListMember - Add-AppvClientConnectionGroup Add-AppvClientPackage Add-AppvPublishingServer - Add-AppxPackage Add-AppxProvisionedPackage Add-AppxVolume Add-BitsFile - Add-CertificateEnrollmentPolicyServer Add-ClusteriSCSITargetServerRole - Add-Computer Add-Content Add-IscsiVirtualDiskTargetMapping Add-JobTrigger - Add-KdsRootKey Add-LocalGroupMember Add-Member Add-SignerRule Add-Type - Add-WebConfiguration Add-WebConfigurationLock Add-WebConfigurationProperty - Add-WindowsCapability Add-WindowsDriver Add-WindowsImage Add-WindowsPackage - Backup-AuditPolicy Backup-SecurityPolicy Backup-WebConfiguration - Checkpoint-Computer Checkpoint-IscsiVirtualDisk Clear-ADAccountExpiration - Clear-ADClaimTransformLink Clear-Content Clear-EventLog - Clear-IISCentralCertProvider Clear-IISConfigCollection Clear-Item - Clear-ItemProperty Clear-KdsCache Clear-RecycleBin Clear-Tpm - Clear-UevAppxPackage Clear-UevConfiguration Clear-Variable - Clear-WebCentralCertProvider Clear-WebConfiguration - Clear-WebRequestTracingSetting Clear-WebRequestTracingSettings - Clear-WindowsCorruptMountPoint Compare-Object Complete-BitsTransfer - Complete-DtcDiagnosticTransaction Complete-Transaction Confirm-SecureBootUEFI - Connect-WSMan ConvertFrom-CIPolicy ConvertFrom-Csv ConvertFrom-Json - ConvertFrom-SecureString ConvertFrom-String ConvertFrom-StringData - Convert-IscsiVirtualDisk Convert-Path Convert-String ConvertTo-Csv - ConvertTo-Html ConvertTo-Json ConvertTo-SecureString ConvertTo-TpmOwnerAuth - ConvertTo-WebApplication ConvertTo-Xml Copy-Item Copy-ItemProperty - Debug-Process Debug-Runspace Disable-ADAccount Disable-ADOptionalFeature - Disable-AppBackgroundTaskDiagnosticLog Disable-Appv - Disable-AppvClientConnectionGroup Disable-ComputerRestore - Disable-IISCentralCertProvider Disable-IISSharedConfig Disable-JobTrigger - Disable-LocalUser Disable-PSBreakpoint Disable-RunspaceDebug - Disable-ScheduledJob Disable-TlsCipherSuite Disable-TlsEccCurve - Disable-TlsSessionTicketKey Disable-TpmAutoProvisioning Disable-Uev - Disable-UevAppxPackage Disable-UevTemplate Disable-WebCentralCertProvider - Disable-WebGlobalModule Disable-WebRequestTracing Disable-WindowsErrorReporting - Disable-WindowsOptionalFeature Disable-WSManCredSSP Disconnect-WSMan - Dismount-AppxVolume Dismount-IscsiVirtualDiskSnapshot Dismount-WindowsImage - Edit-CIPolicyRule Enable-ADAccount Enable-ADOptionalFeature - Enable-AppBackgroundTaskDiagnosticLog Enable-Appv - Enable-AppvClientConnectionGroup Enable-ComputerRestore - Enable-IISCentralCertProvider Enable-IISSharedConfig Enable-JobTrigger - Enable-LocalUser Enable-PSBreakpoint Enable-RunspaceDebug Enable-ScheduledJob - Enable-TlsCipherSuite Enable-TlsEccCurve Enable-TlsSessionTicketKey - Enable-TpmAutoProvisioning Enable-Uev Enable-UevAppxPackage Enable-UevTemplate - Enable-WebCentralCertProvider Enable-WebGlobalModule Enable-WebRequestTracing - Enable-WindowsErrorReporting Enable-WindowsOptionalFeature Enable-WSManCredSSP - Expand-WindowsCustomDataImage Expand-WindowsImage Export-Alias - Export-BinaryMiLog Export-Certificate Export-Clixml Export-Counter Export-Csv - Export-FormatData Export-IISConfiguration Export-IscsiVirtualDiskSnapshot - Export-PfxCertificate Export-PSSession Export-StartLayout - Export-TlsSessionTicketKey Export-UevConfiguration Export-UevPackage - Export-WindowsDriver Export-WindowsImage Format-Custom Format-List - Format-SecureBootUEFI Format-Table Format-Wide Get-Acl - Get-ADAccountAuthorizationGroup Get-ADAccountResultantPasswordReplicationPolicy - Get-ADAuthenticationPolicy Get-ADAuthenticationPolicySilo - Get-ADCentralAccessPolicy Get-ADCentralAccessRule Get-ADClaimTransformPolicy - Get-ADClaimType Get-ADComputer Get-ADComputerServiceAccount - Get-ADDCCloningExcludedApplicationList Get-ADDefaultDomainPasswordPolicy - Get-ADDomain Get-ADDomainController - Get-ADDomainControllerPasswordReplicationPolicy - Get-ADDomainControllerPasswordReplicationPolicyUsage - Get-ADFineGrainedPasswordPolicy Get-ADFineGrainedPasswordPolicySubject - Get-ADForest Get-ADGroup Get-ADGroupMember Get-ADObject Get-ADOptionalFeature - Get-ADOrganizationalUnit Get-ADPrincipalGroupMembership - Get-ADReplicationAttributeMetadata Get-ADReplicationConnection - Get-ADReplicationFailure Get-ADReplicationPartnerMetadata - Get-ADReplicationQueueOperation Get-ADReplicationSite Get-ADReplicationSiteLink - Get-ADReplicationSiteLinkBridge Get-ADReplicationSubnet - Get-ADReplicationUpToDatenessVectorTable Get-ADResourceProperty - Get-ADResourcePropertyList Get-ADResourcePropertyValueType Get-ADRootDSE - Get-ADServiceAccount Get-ADTrust Get-ADUser Get-ADUserResultantPasswordPolicy - Get-Alias Get-AppLockerFileInformation Get-AppLockerPolicy - Get-AppvClientApplication Get-AppvClientConfiguration - Get-AppvClientConnectionGroup Get-AppvClientMode Get-AppvClientPackage - Get-AppvPublishingServer Get-AppvStatus Get-AppxDefaultVolume Get-AppxPackage - Get-AppxPackageManifest Get-AppxProvisionedPackage Get-AppxVolume - Get-AuthenticodeSignature Get-BitsTransfer Get-BpaModel Get-BpaResult - Get-Certificate Get-CertificateAutoEnrollmentPolicy - Get-CertificateEnrollmentPolicyServer Get-CertificateNotificationTask - Get-ChildItem Get-CimAssociatedInstance Get-CimClass Get-CimInstance - Get-CimSession Get-CIPolicy Get-CIPolicyIdInfo Get-CIPolicyInfo Get-Clipboard - Get-CmsMessage Get-ComputerInfo Get-ComputerRestorePoint Get-Content - Get-ControlPanelItem Get-Counter Get-Credential Get-Culture Get-DAPolicyChange - Get-Date Get-Event Get-EventLog Get-EventSubscriber Get-ExecutionPolicy - Get-FormatData Get-Host Get-HotFix Get-IISAppPool Get-IISCentralCertProvider - Get-IISConfigAttributeValue Get-IISConfigCollection - Get-IISConfigCollectionElement Get-IISConfigElement Get-IISConfigSection - Get-IISServerManager Get-IISSharedConfig Get-IISSite Get-IscsiServerTarget - Get-IscsiTargetServerSetting Get-IscsiVirtualDisk Get-IscsiVirtualDiskSnapshot - Get-Item Get-ItemProperty Get-ItemPropertyValue Get-JobTrigger - Get-KdsConfiguration Get-KdsRootKey Get-LocalGroup Get-LocalGroupMember - Get-LocalUser Get-Location Get-Member Get-NfsMappedIdentity Get-NfsNetgroup - Get-PfxCertificate Get-PfxData Get-Process Get-PSBreakpoint Get-PSCallStack - Get-PSDrive Get-PSProvider Get-Random Get-Runspace Get-RunspaceDebug - Get-ScheduledJob Get-ScheduledJobOption Get-SecureBootPolicy Get-SecureBootUEFI - Get-Service Get-SystemDriver Get-TimeZone Get-TlsCipherSuite Get-TlsEccCurve - Get-Tpm Get-TpmEndorsementKeyInfo Get-TpmSupportedFeature Get-TraceSource - Get-Transaction Get-TroubleshootingPack Get-TypeData Get-UevAppxPackage - Get-UevConfiguration Get-UevStatus Get-UevTemplate Get-UevTemplateProgram - Get-UICulture Get-Unique Get-Variable Get-WebAppDomain Get-WebApplication - Get-WebAppPoolState Get-WebBinding Get-WebCentralCertProvider Get-WebConfigFile - Get-WebConfiguration Get-WebConfigurationBackup Get-WebConfigurationLocation - Get-WebConfigurationLock Get-WebConfigurationProperty Get-WebFilePath - Get-WebGlobalModule Get-WebHandler Get-WebItemState Get-WebManagedModule - Get-WebRequest Get-Website Get-WebsiteState Get-WebURL Get-WebVirtualDirectory - Get-WheaMemoryPolicy Get-WIMBootEntry - Get-WinAcceptLanguageFromLanguageListOptOut - Get-WinCultureFromLanguageListOptOut Get-WinDefaultInputMethodOverride - Get-WindowsCapability Get-WindowsDeveloperLicense Get-WindowsDriver - Get-WindowsEdition Get-WindowsErrorReporting Get-WindowsImage - Get-WindowsImageContent Get-WindowsOptionalFeature Get-WindowsPackage - Get-WindowsSearchSetting Get-WinEvent Get-WinHomeLocation - Get-WinLanguageBarOption Get-WinSystemLocale Get-WinUILanguageOverride - Get-WinUserLanguageList Get-WmiObject Get-WSManCredSSP Get-WSManInstance - Grant-ADAuthenticationPolicySiloAccess Group-Object Import-Alias - Import-BinaryMiLog Import-Certificate Import-Clixml Import-Counter Import-Csv - Import-IscsiVirtualDisk Import-LocalizedData Import-PfxCertificate - Import-PSSession Import-StartLayout Import-TpmOwnerAuth Import-UevConfiguration - Initialize-Tpm Install-ADServiceAccount Install-NfsMappingStore Invoke-BpaModel - Invoke-CimMethod Invoke-CommandInDesktopPackage Invoke-DscResource - Invoke-Expression Invoke-Item Invoke-RestMethod Invoke-TroubleshootingPack - Invoke-WebRequest Invoke-WmiMethod Invoke-WSManAction - Join-DtcDiagnosticResourceManager Join-Path Limit-EventLog Measure-Command - Measure-Object Merge-CIPolicy Mount-AppvClientConnectionGroup - Mount-AppvClientPackage Mount-AppxVolume Mount-IscsiVirtualDiskSnapshot - Mount-WindowsImage Move-ADDirectoryServer - Move-ADDirectoryServerOperationMasterRole Move-ADObject Move-AppxPackage - Move-Item Move-ItemProperty New-ADAuthenticationPolicy - New-ADAuthenticationPolicySilo New-ADCentralAccessPolicy - New-ADCentralAccessRule New-ADClaimTransformPolicy New-ADClaimType - New-ADComputer New-ADDCCloneConfigFile New-ADFineGrainedPasswordPolicy - New-ADGroup New-ADObject New-ADOrganizationalUnit New-ADReplicationSite - New-ADReplicationSiteLink New-ADReplicationSiteLinkBridge - New-ADReplicationSubnet New-ADResourceProperty New-ADResourcePropertyList - New-ADServiceAccount New-ADUser New-Alias New-AppLockerPolicy - New-CertificateNotificationTask New-CimInstance New-CimSession - New-CimSessionOption New-CIPolicy New-CIPolicyRule New-DtcDiagnosticTransaction - New-Event New-EventLog New-FileCatalog New-IISConfigCollectionElement - New-IISSite New-IscsiServerTarget New-IscsiVirtualDisk New-Item - New-ItemProperty New-JobTrigger New-LocalGroup New-LocalUser - New-NetIPsecAuthProposal New-NetIPsecMainModeCryptoProposal - New-NetIPsecQuickModeCryptoProposal New-NfsMappedIdentity New-NfsNetgroup - New-Object New-PSDrive New-PSWorkflowExecutionOption New-ScheduledJobOption - New-SelfSignedCertificate New-Service New-TimeSpan New-TlsSessionTicketKey - New-Variable New-WebApplication New-WebAppPool New-WebBinding New-WebFtpSite - New-WebGlobalModule New-WebHandler New-WebManagedModule New-WebServiceProxy - New-Website New-WebVirtualDirectory New-WindowsCustomImage New-WindowsImage - New-WinEvent New-WinUserLanguageList New-WSManInstance New-WSManSessionOption - Optimize-WindowsImage Out-File Out-GridView Out-Printer Out-String Pop-Location - Protect-CmsMessage Publish-AppvClientPackage Publish-DscConfiguration - Push-Location Read-Host Receive-DtcDiagnosticTransaction - Register-CimIndicationEvent Register-EngineEvent Register-ObjectEvent - Register-ScheduledJob Register-UevTemplate Register-WmiEvent - Remove-ADAuthenticationPolicy Remove-ADAuthenticationPolicySilo - Remove-ADCentralAccessPolicy Remove-ADCentralAccessPolicyMember - Remove-ADCentralAccessRule Remove-ADClaimTransformPolicy Remove-ADClaimType - Remove-ADComputer Remove-ADComputerServiceAccount - Remove-ADDomainControllerPasswordReplicationPolicy - Remove-ADFineGrainedPasswordPolicy Remove-ADFineGrainedPasswordPolicySubject - Remove-ADGroup Remove-ADGroupMember Remove-ADObject Remove-ADOrganizationalUnit - Remove-ADPrincipalGroupMembership Remove-ADReplicationSite - Remove-ADReplicationSiteLink Remove-ADReplicationSiteLinkBridge - Remove-ADReplicationSubnet Remove-ADResourceProperty - Remove-ADResourcePropertyList Remove-ADResourcePropertyListMember - Remove-ADServiceAccount Remove-ADUser Remove-AppvClientConnectionGroup - Remove-AppvClientPackage Remove-AppvPublishingServer Remove-AppxPackage - Remove-AppxProvisionedPackage Remove-AppxVolume Remove-BitsTransfer - Remove-CertificateEnrollmentPolicyServer Remove-CertificateNotificationTask - Remove-CimInstance Remove-CimSession Remove-CIPolicyRule Remove-Computer - Remove-Event Remove-EventLog Remove-IISConfigAttribute - Remove-IISConfigCollectionElement Remove-IISConfigElement Remove-IISSite - Remove-IscsiServerTarget Remove-IscsiVirtualDisk - Remove-IscsiVirtualDiskSnapshot Remove-IscsiVirtualDiskTargetMapping - Remove-Item Remove-ItemProperty Remove-JobTrigger Remove-LocalGroup - Remove-LocalGroupMember Remove-LocalUser Remove-NfsMappedIdentity - Remove-NfsNetgroup Remove-PSBreakpoint Remove-PSDrive Remove-TypeData - Remove-Variable Remove-WebApplication Remove-WebAppPool Remove-WebBinding - Remove-WebConfigurationBackup Remove-WebConfigurationLocation - Remove-WebConfigurationLock Remove-WebConfigurationProperty - Remove-WebGlobalModule Remove-WebHandler Remove-WebManagedModule Remove-Website - Remove-WebVirtualDirectory Remove-WindowsCapability Remove-WindowsDriver - Remove-WindowsImage Remove-WindowsPackage Remove-WmiObject Remove-WSManInstance - Rename-ADObject Rename-Computer Rename-Item Rename-ItemProperty - Rename-LocalGroup Rename-LocalUser Rename-WebConfigurationLocation - Repair-AppvClientConnectionGroup Repair-AppvClientPackage - Repair-UevTemplateIndex Repair-WindowsImage Reset-ADServiceAccountPassword - Reset-ComputerMachinePassword Reset-IISServerManager Resize-IscsiVirtualDisk - Resolve-DnsName Resolve-Path Restart-Computer Restart-Service - Restart-WebAppPool Restart-WebItem Restore-ADObject Restore-AuditPolicy - Restore-Computer Restore-IscsiVirtualDisk Restore-SecurityPolicy - Restore-UevBackup Restore-UevUserSetting Restore-WebConfiguration - Resume-BitsTransfer Resume-Service Revoke-ADAuthenticationPolicySiloAccess - Save-WindowsImage Search-ADAccount Select-Object Select-String - Select-WebConfiguration Select-Xml Send-AppvClientReport - Send-DtcDiagnosticTransaction Send-MailMessage Set-Acl - Set-ADAccountAuthenticationPolicySilo Set-ADAccountControl - Set-ADAccountExpiration Set-ADAccountPassword Set-ADAuthenticationPolicy - Set-ADAuthenticationPolicySilo Set-ADCentralAccessPolicy - Set-ADCentralAccessRule Set-ADClaimTransformLink Set-ADClaimTransformPolicy - Set-ADClaimType Set-ADComputer Set-ADDefaultDomainPasswordPolicy Set-ADDomain - Set-ADDomainMode Set-ADFineGrainedPasswordPolicy Set-ADForest Set-ADForestMode - Set-ADGroup Set-ADObject Set-ADOrganizationalUnit Set-ADReplicationConnection - Set-ADReplicationSite Set-ADReplicationSiteLink Set-ADReplicationSiteLinkBridge - Set-ADReplicationSubnet Set-ADResourceProperty Set-ADResourcePropertyList - Set-ADServiceAccount Set-ADUser Set-Alias Set-AppBackgroundTaskResourcePolicy - Set-AppLockerPolicy Set-AppvClientConfiguration Set-AppvClientMode - Set-AppvClientPackage Set-AppvPublishingServer Set-AppxDefaultVolume - Set-AppXProvisionedDataFile Set-AuthenticodeSignature Set-BitsTransfer - Set-BpaResult Set-CertificateAutoEnrollmentPolicy Set-CimInstance - Set-CIPolicyIdInfo Set-CIPolicySetting Set-CIPolicyVersion Set-Clipboard - Set-Content Set-Culture Set-Date Set-DscLocalConfigurationManager - Set-ExecutionPolicy Set-HVCIOptions Set-IISCentralCertProvider - Set-IISCentralCertProviderCredential Set-IISConfigAttributeValue - Set-IscsiServerTarget Set-IscsiTargetServerSetting Set-IscsiVirtualDisk - Set-IscsiVirtualDiskSnapshot Set-Item Set-ItemProperty Set-JobTrigger - Set-KdsConfiguration Set-LocalGroup Set-LocalUser Set-Location - Set-NfsMappedIdentity Set-NfsNetgroup Set-PSBreakpoint Set-RuleOption - Set-ScheduledJob Set-ScheduledJobOption Set-SecureBootUEFI Set-Service - Set-TimeZone Set-TpmOwnerAuth Set-TraceSource Set-UevConfiguration - Set-UevTemplateProfile Set-Variable Set-WebBinding Set-WebCentralCertProvider - Set-WebCentralCertProviderCredential Set-WebConfiguration - Set-WebConfigurationProperty Set-WebGlobalModule Set-WebHandler - Set-WebManagedModule Set-WheaMemoryPolicy - Set-WinAcceptLanguageFromLanguageListOptOut - Set-WinCultureFromLanguageListOptOut Set-WinDefaultInputMethodOverride - Set-WindowsEdition Set-WindowsProductKey Set-WindowsSearchSetting - Set-WinHomeLocation Set-WinLanguageBarOption Set-WinSystemLocale - Set-WinUILanguageOverride Set-WinUserLanguageList Set-WmiInstance - Set-WSManInstance Set-WSManQuickConfig Show-ADAuthenticationPolicyExpression - Show-Command Show-ControlPanelItem Show-EventLog - Show-WindowsDeveloperLicenseRegistration Sort-Object Split-Path - Split-WindowsImage Start-BitsTransfer Start-DscConfiguration - Start-DtcDiagnosticResourceManager Start-IISCommitDelay Start-IISSite - Start-Process Start-Service Start-Sleep Start-Transaction Start-Transcript - Start-WebAppPool Start-WebCommitDelay Start-WebItem Start-Website - Stop-AppvClientConnectionGroup Stop-AppvClientPackage Stop-Computer - Stop-DtcDiagnosticResourceManager Stop-IISCommitDelay Stop-IISSite - Stop-IscsiVirtualDiskOperation Stop-Process Stop-Service Stop-Transcript - Stop-WebAppPool Stop-WebCommitDelay Stop-WebItem Stop-Website - Suspend-BitsTransfer Suspend-Service Switch-Certificate Sync-ADObject - Sync-AppvPublishingServer Tee-Object Test-ADServiceAccount Test-AppLockerPolicy - Test-Certificate Test-ComputerSecureChannel Test-Connection - Test-DscConfiguration Test-FileCatalog Test-KdsRootKey Test-NfsMappedIdentity - Test-Path Test-UevTemplate Test-WSMan Trace-Command Unblock-File Unblock-Tpm - Undo-DtcDiagnosticTransaction Undo-Transaction Uninstall-ADServiceAccount - Unlock-ADAccount Unprotect-CmsMessage Unpublish-AppvClientPackage - Unregister-Event Unregister-ScheduledJob Unregister-UevTemplate - Unregister-WindowsDeveloperLicense Update-FormatData Update-List - Update-TypeData Update-UevTemplate Update-WIMBootEntry Use-Transaction - Use-WindowsUnattend Wait-Debugger Wait-Event Wait-Process Write-Debug - Write-Error Write-EventLog Write-Host Write-Information Write-Output - Write-Progress Write-Verbose Write-Warning \% \? ac asnp cat cd chdir clc clear - clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir - dnsn ebp echo epal epcsv epsn erase etsn exsn fc fl foreach ft fw gal gbp gc - gci gcm gcs gdr ghy gi gjb gl gm gmo gp gps gpv group gsn gsnp gsv gu gv gwmi h - history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md - measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd - pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv - rvpa rwmi sajb sal saps sasv sbp sc select set shcm si sl sleep sls sort sp - spjb spps spsv start sujb sv swmi tee trcm type wget where wjb write + MULTILINE_KEYWORDS = %w( + synopsis description parameter example inputs outputs notes link + component role functionality forwardhelptargetname forwardhelpcategory + remotehelprunspace externalhelp ).join('|') - # Override from Shell - state :interp do - rule %r/`$/, Str::Escape # line continuation - rule %r/`./, Str::Escape - rule %r/\$\(\(/, Keyword, :math - rule %r/\$\(/, Str::Interpol, :paren_interp - rule %r/\${#?/, Keyword, :curly - rule %r/\$#?(\w+|.)/, Name::Variable + state :variable do + rule %r/#{AUTO_VARS}/, Name::Builtin::Pseudo + rule %r/(\$)(?:(\w+)(:))?(\w+|\{(?:[^`]|`.)+?\})/ do + groups Name::Variable, Name::Namespace, Punctuation, Name::Variable + end + rule %r/\$\w+/, Name::Variable + rule %r/\$\{(?:[^`]|`.)+?\}/, Name::Variable end - # Override from Shell - state :double_quotes do + state :multiline do + rule %r/\.(?:#{MULTILINE_KEYWORDS})/i, Comment::Special + rule %r/#>/, Comment::Multiline, :pop! + rule %r/[^#.]+?/m, Comment::Multiline + rule %r/[#.]+/, Comment::Multiline + end + + state :interpol do + rule %r/\)/, Str::Interpol, :pop! + mixin :root + end + + state :dq do # NB: "abc$" is literally the string abc$. # Here we prevent :interp from interpreting $" as a variable. rule %r/(?:\$#?)?"/, Str::Double, :pop! - mixin :interp + rule %r/\$\(/, Str::Interpol, :interpol + rule %r/`$/, Str::Escape # line continuation + rule %r/`./, Str::Escape rule %r/[^"`$]+/, Str::Double + mixin :variable end - # Override from Shell - state :data do - rule %r/\s+/, Text - rule %r/\$?"/, Str::Double, :double_quotes - rule %r/\$'/, Str::Single, :ansi_string + state :sq do + rule %r/'/, Str::Single, :pop! + rule %r/[^']+/, Str::Single + end - rule %r/'/, Str::Single, :single_quotes + state :heredoc do + rule %r/(?:\$#?)?"@/, Str::Heredoc, :pop! + rule %r/\$\(/, Str::Interpol, :interpol + rule %r/`$/, Str::Escape # line continuation + rule %r/`./, Str::Escape + rule %r/[^"`$]+?/m, Str::Heredoc + rule %r/"+/, Str::Heredoc + mixin :variable + end - rule %r/\*/, Keyword + state :class do + rule %r/\{/, Punctuation, :pop! + rule %r/\s+/, Text::Whitespace + rule %r/\w+/, Name::Class + rule %r/[:,]/, Punctuation + end - rule %r/;/, Text - rule %r/[^=\*\s{}()$"'`<]+/, Text - rule %r/\d+(?= |\Z)/, Num - rule %r/</, Text - mixin :interp + state :hasht do + rule %r/\s+/, Text::Whitespace + rule %r/\}/, Punctuation, :pop! + rule %r/"/, Str::Double, :dq + rule %r/'/, Str::Single, :sq + rule %r/\w+/, Name::Other + rule %r/=/, Operator + rule %r/,/, Punctuation + mixin :variable end - prepend :basic do - rule %r(<#[\s\S]*?#>)m, Comment::Multiline - rule %r/#.*$/, Comment::Single - rule %r/\b(#{OPERATORS})\s*\b/i, Operator - rule %r/\b(#{ATTRIBUTES})\s*\b/i, Name::Attribute - rule %r/\b(#{KEYWORDS})\s*\b/i, Keyword - rule %r/\b(#{KEYWORDS_TYPE})\s*\b/i, Keyword::Type - rule %r/\bcase\b/, Keyword, :case - rule %r/\b(#{BUILTINS})\s*\b(?!\.)/i, Name::Builtin + state :array do + rule %r/\s+/, Text::Whitespace + rule %r/\)/, Punctuation, :pop! + rule %r/"/, Str::Double, :dq + rule %r/'/, Str::Single, :sq + rule %r/,/, Punctuation + mixin :variable + end + + state :bracket do + rule %r/\]/, Punctuation, :pop! + rule %r/[A-Za-z]\w+\./, Name::Constant + rule %r/([A-Za-z]\w+)/ do |m| + if ATTRIBUTES.include? m[0] + token Name::Builtin::Pseudo + else + token Keyword::Type + end + end + mixin :root + end + + state :parameters do + rule %r/\s*?\n/, Text::Whitespace, :pop! + rule %r/[;(){}\]]/, Punctuation, :pop! + rule %r/[|=]/, Operator, :pop! + rule %r/[\/\\~\w][-.:\/\\~\w]*/, Name::Other + rule %r/\w[-\w]+/, Name::Other + mixin :root + end + + state :root do + rule %r/\s+/, Text::Whitespace + + rule %r/#requires\s-version \d(?:\.\d+)?/, Comment::Preproc + rule %r/#.*/, Comment + rule %r/<#/, Comment::Multiline, :multiline + + rule %r/"/, Str::Double, :dq + rule %r/'/, Str::Single, :sq + rule %r/@"/, Str::Heredoc, :heredoc + rule %r/@'.*?'@/m, Str::Heredoc + + rule %r/\d*\.\d+/, Num::Float + rule %r/\d+/, Num::Integer + + rule %r/\.\.(?=\.?\d)/, Operator + rule %r/(?:#{OPERATORS})\b/i, Operator + + rule %r/(class)(\s+)(\w+)/i do + groups Keyword::Reserved, Text::Whitespace, Name::Class + push :class + end + rule %r/(function)(\s+)(?:(\w+)(:))?(\w[-\w]+)/i do + groups Keyword::Reserved, Text::Whitespace, Name::Namespace, Punctuation, Name::Function + end + rule %r/(?:#{KEYWORDS})\b(?![-.])/i, Keyword::Reserved + + rule %r/-{1,2}\w+/, Name::Tag + + rule %r/([\/\\~\w][-.:\/\\~\w]*)(\n)?/ do |m| + groups Name::Function, Text::Whitespace + push :parameters unless m[2] + end + + rule %r/(\.)?([-\w]+)(?:(\()|(\n))?/ do |m| + groups Operator, Name::Function, Punctuation, Text::Whitespace + push :parameters unless m[3] + end + + rule %r/[-+*\/%=!.&|]/, Operator + rule %r/@\{/, Punctuation, :hasht + rule %r/@\(/, Punctuation, :array + rule %r/\[/, Punctuation, :bracket + rule %r/[{}(),:;]/, Punctuation + + mixin :variable end end end end