programing

LINQ의 Select 명령에 해당하는 파워셸?

cafebook 2023. 10. 5. 23:31
반응형

LINQ의 Select 명령에 해당하는 파워셸?

저는 다음과 같은 파워셸 스크립트를 실행하려고 합니다.

import-module ActiveDirectory

$computers = Get-ADComputer -filter * -SearchBase "OU=myOU,DC=vw,DC=local" | select-object name

Invoke-Command -ComputerName $computers -ScriptBlock {gpupdate /target:Computer}

문제는.$computers가 아닙니다.string[]맘에 들다-ComputerName기대합니다.그것은 정말로 그것의 배열입니다.ADComputer이름이라는 매개 변수가 하나 있습니다.

# Get-ADComputer -filter * -SearchBase "OU=myOU,DC=vw,DC=local" | select-object name | Format-Custom

class ADComputer
{
  name = PC1
}

class ADComputer
{
  name = PC2
}

class ADComputer
{
  name = PC3
}

이름의 문자열 배열을 구하는 올바른 방법은 무엇입니까?만약 내가 C#에 있었다면 그럴거란걸 알아요.

string[] computerNames = computers.Select(computer => computer.name).ToArray();

파워셸에서 정확하게 하는 방법을 배우고 싶습니다.

사용가능

Select-Object -ExpandProperty Name

또는 (가장 가까운 등가물을 probably)

ForEach-Object { $_.Name }

결과를 배열로 강제 설정하려면(예: 해당 배열에 액세스하려면)Countproperty), 식을 에워싸야 합니다.@(). 그렇지 않으면 배열 또는 단일 개체가 될 수 있습니다.

언급URL : https://stackoverflow.com/questions/10921712/powershell-equivalent-of-linqs-select-command

반응형