我想做这样的事情,主要是为了代码可读性:
$ADProperties = "extensionAttribute1,Department,Company,telephoneNumber"
$ADFilter = "{(objectClass -eq "user") -and (enabled -eq $True)}"
Get-ADUser -Filter $ADFilter -Properties $ADProperties
我收到如下错误:Get-Aduser : One or more properties are invalid.
似乎我已经看到了以某种方式通过过滤器或属性的方法,但现在无法找到它。
编辑 - 适用于-Properties
:
$ADProperties = "EmployeeID","EmployeeNumber","extensionAttribute1","Department"
(谢谢Eris)但这会引发错误:
$ADProperties = extensionAttribute1,Department,Company,telephoneNumber
另外,根据Vasili,这有效:
$str = @("foo","bar")
适用于-Filter
$ADFilter = {(objectClass -eq "user") -and (enabled -eq $True)}
谢谢大家。 MOB
答案 0 :(得分:7)
属性参数采用string[]
(数组)数据类型,因此,它需要更像这样的东西:
@("extensionAttribute1","Department","Company","telephoneNumber")
答案 1 :(得分:3)
如果您在字符串变量中构造命令,则可以这样做:
$cmd = Get-ADUser -Filter $ADFilter -Properties $ADProperties
然后调用它
invoke-command $cmd