Ordena a saída do grupo de rede em uma coluna

1

O comando net group "Groupname" /domain > c:\temp\users.txt gerará a seguinte saída no arquivo de texto.

Group name     GroupABC
Comment        XXXXXXXXXXXXXXXXXXXXX

Members

--------------------------------------------------------------------
MemberA                  MemberB                  MemberC 
MemberD                  MemberE                  MemberF 
MemberG                  MemberH                  MemberI
The command completed successfully.

Eu precisaria me livrar do cabeçalho desnecessário e comentar no final do arquivo e simplesmente ter a saída em uma lista ordenada da seguinte forma:

MemberA
MemberB
MemberC
MemberD
MemberE
MemberF
...

Existe uma maneira fácil de fazer isso sem ter que enviar para o arquivo e remover o cabeçalho manualmente? Sua ajuda com a classificação e remoção de espaçamento desnecessário é muito apreciada!

    
por user618616 14.12.2017 / 10:45

2 respostas

0

A maneira mais fácil de fazer isso é pensar em fazer isso em powershell com os cmdlets do Active Directory. No controlador de domínio ou em uma máquina com RSAT instalada, execute o seguinte

Get-ADGroupMember GroupName | select name | out-file GroupName.txt
    
por 14.12.2017 / 10:58
1

Se você estiver faltando cmdlets do AD, poderá formatar os resultados de net no 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'
}
    
por 14.12.2017 / 17:10