이 명령 net group "Groupname" /domain > c:\temp\users.txt
은 텍스트 파일에서 다음 출력을 생성합니다.
Group name GroupABC
Comment XXXXXXXXXXXXXXXXXXXXX
Members
--------------------------------------------------------------------
MemberA MemberB MemberC
MemberD MemberE MemberF
MemberG MemberH MemberI
The command completed successfully.
파일 끝에서 불필요한 헤더와 주석을 제거하고 다음과 같이 순서가 지정된 목록에 출력을 표시해야합니다.
MemberA
MemberB
MemberC
MemberD
MemberE
MemberF
...
파일로 출력하지 않고 헤더를 수동으로 제거하지 않고도이 작업을 수행하는 쉬운 방법이 있습니까? 불필요한 간격을 정렬하고 제거하는 데 도움을 주셔서 감사합니다.
답변
내가 생각할 수있는 가장 쉬운 방법은 Active Directory cmdlet을 사용하여 powershell에서 수행하는 것입니다. 도메인 컨트롤러 또는 RSAT가 설치된 컴퓨터에서 다음을 실행하십시오.
Get-ADGroupMember GroupName | select name | out-file GroupName.txt
답변
AD cmdlet이 없으면 net
Powershell 에서 결과 형식을 지정할 수 있습니다.
# store the results in an array.
$results = net group "Groupname" /domain
# the size of the header and footer is always the same. select the data between these sections.
$results = $results[8..($results.Length-3)]
# replace the empty spaces with a comma. join on the comma, getting rid of blank lines.
foreach($result in $results) {
($result -replace '\s+',',') -split ',' | ? { $_ } >> 'C:\temp\users.txt'
}