Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
allvarlighetsgrad: Varning
Beskrivning
Denna regel upptäcker cmdlets som inte finns tillgängliga för PowerShell-versionen, versionen och operativsystemet du siktar på. Regeln jämför varje cmdlet i ditt skript med en kompatibilitetstillåtelselista som levereras med PSScriptAnalyzer. Dessa filer finns på följande plats: /path/to/PSScriptAnalyzerModule/Settings.
Varje fil använder detta namngivningsformat:
<psedition>-<psversion>-<os>.json
Where:
-
<psedition>ärCoreellerDesktop -
<psversion>är PowerShell-versionen -
<os>ärWindows,Linux,Linux-ArmellerMacOS
Example
För att kontrollera om ditt skript är kompatibelt med PowerShell Core 6.1 på Windows, lägg till denna konfiguration:
@{
'Rules' = @{
'PSUseCompatibleCmdlets' = @{
'compatibility' = @('core-6.1.0-windows')
}
}
}
Kompatibilitetsparametern accepterar en lista med en eller flera målidentifierare, såsom:
- desktop-2.0-windows
- desktop-3.0-windows
- desktop-4.0-windows (hämtat från Windows Server 2012 R2)
- desktop-5.1.14393.206-windows
- core-6.1.0-Windows (hämtat från Windows 10, version 1803)
- core-6.1.0-linux (hämtad från Ubuntu 18.04)
- core-6.1.0-linux-arm (hämtad från Raspbian)
- core-6.1.0-macos
Patchade PowerShell-versioner har vanligtvis samma cmdlet-data, så denna regel levererar främst huvud- och minorversionprofiler.
Du kan också skapa en anpassad profil med New-CommandDataFile.ps1. Placera den genererade JSON-filen i Settings modulens PSScriptAnalyzer mapp. Sedan kan du referera till den filen med namn under compatibility.
Filerna core-6.0.2-* togs bort i PSScriptAnalyzer 1.18 eftersom PowerShell 6.0 nådde slutet av sin livslängd.