AvoidAssignmentToAutomaticVariable

Súlyossági szint: Figyelmeztetés

Leírás

Ez a szabály automatikus változókhoz és paraméternevekhez való hozzárendeléseket érzékel, amelyek automatikus változóneveket használnak. A PowerShell automatikusan definiálja azokat a belső állapotinformációkat tároló változókat, és önállóan kezeli azokat. Bár sok automatikus változót felülírhatsz , ez váratlan hatással lehet a felhasználókra, és megnehezítheti a kódod karbantartását és hibakeresését.

Kerüld az automatikus változónevek használatát a függvényeidben és paramétereidben. Tartsd fenn az automatikus változókat csak a PowerShell belső használatára, és csak az állapotinformációk olvasására támaszkodj rájuk.

További információért lásd: about_Automatic_Variables.

Hogyan

Használj változóneveket a függvényekben vagy paramétereikben, amelyek nem ütköznek az automatikus változókkal.

Example

Nem megfelelő

A változó $Error automatikus változó, amely a globális skábban létezik, ezért soha nem szabad használni változóként vagy paraméternévként.

function foo($Error){ }
function Get-CustomErrorMessage($ErrorMessage){ $Error = "Error occurred: $ErrorMessage" }

Megfelelő

function Get-CustomErrorMessage($ErrorMessage){ $FinalErrorMessage = "Error occurred: $ErrorMessage" }