programing

PowerShell: 객체가 아닌 어레이로 결과를 가져오려면 어떻게 해야 합니까?

closeapi 2023. 7. 30. 17:50
반응형

PowerShell: 객체가 아닌 어레이로 결과를 가져오려면 어떻게 해야 합니까?

$result = Get-ADUser -Filter $filter

2개 이상의 결과가 있으면 배열로 $x를 받지만, 하나의 결과만 있으면 객체로 $x를 얻습니다.어떻게 하면 더 정확하게 배열을 받을 수 있습니까? - 비어 있거나, 하나의 요소 또는 일부 요소로 배열을 받을 수 있습니까?

해라$x = @(get-aduser)

@()구문은 결과를 배열로 강제합니다.

참고로, 이 질문의 다른 솔루션은 의견에 명시된 이유 때문에 이를 위한 최선의 방법이 아닙니다.더 나은 방법은 단순히 함수 앞에 쉼표를 넣는 것입니다.

$result = ,(Get-ADUser -Filter $filter)

그러면 빈 결과가 빈 배열에 들어가고, 1개의 요소가 1개의 요소 배열에 들어가고, 2개 이상의 요소가 동일한 요소 배열에 들어갑니다.

또한 사용할 수 있습니다.$x=[array]get-aduser

루프에 인덱스 값을 사용하여 동일한 문제가 발생했습니다.나는 그것을 바꾸어서요.

$PatchGroupData.SCCM_Collection[$i]

로.

@($PatchGroupData.SCCM_Collection)[$i]

언급URL : https://stackoverflow.com/questions/14085077/powershell-how-can-i-to-force-to-get-a-result-as-an-array-instead-of-object

반응형