Вкратце, -band
- это двоичный или побитовый оператор AND.
$UACPropertyFlags.Length
- количество символов в строковом свойстве или, возможно, количество элементов в этой коллекции. $_
будет таким же значением. [math]::Pow(2,$_)
равно 2, возведенное в степень $_
.
$UAC -bAnd [math]::Pow(2,$_)
, следовательно, вероятно, будет значением определенного (возможно, наиболее значимого) бита для числового значения c, равного $UAC
, Это будет либо ненулевое число (true), либо 0 (false).
Это простой динамический c тест битовой маски.