src/Public/Remove-ProcessRule.ps1
Function Remove-ProcessRule { param( [Parameter(Mandatory=$false)] [String] $Selector, [Parameter(Mandatory=$false)] [CpuPriority] $Priority, [Parameter(Mandatory=$false)] [CpuAffinity] $Affinity, [Parameter(Mandatory=$false)] [String] $Config = (Get-ProcessConfigFile) ) if(!(Test-Path $Config)) { return "File $Path not found" } $Rules = Get-Content $Config | ConvertFrom-Yaml -ErrorAction Ignore -Ordered if(!$Rules) { $Rules = @{ } } $Rules.rules = @($Rules.rules ` | Where-Object { !($_.selector) -or $_.selector -notlike $Selector } ` | Where-Object { !($_.priority) -or $_.priority -ne [int]$Priority } ` | Where-Object { !($_.affinity) -or $_.affinity -ne [int]$Affinity } ` | Sort-Object selector) $Rules | ConvertTo-Yaml | Set-Content $Config } |