Domanda

Ho uno script PS3 come segue:

Get-ADGroupMember -identity "AD Group Name" | select name | sort name
.

Che mi dà un elenco dei nomi delle persone in quel gruppo, con ognuno prendendo una nuova linea.

Qualcuno può dirmi come formattare l'output in modo che i nomi siano come:

First Last1, First Last2, First Last3...
.

Grazie per qualsiasi aiuto.

È stato utile?

Soluzione

Sulla base della tua riga di comando, ecco qualcosa:

Get-ADGroupMember -identity "AD Group Name" | select name | sort name | %  {$result=""}{$result+="$($_.name),"}{$result.Substring(0,$result.Length-1)}
.

%: è l'alias di foreach.

{}{}{}: è la sintassi per il blocco dititialisation, il blocco del loop e il blocco di terminazione.

Nel blocco terminante rimuovo l'ultimo ','.

Ecco un modo, dove è sicuro di usare il nome (attributo secondario) e il cognome (Attributo SN).

Get-ADGroupMember -identity "AD Group Name" | Get-ADUser -Properties sn,givenName | % {$result=""}{$result+="$($_.givenName) $($_.sn),"}{$result.Substring(0,$result.Length-1)}
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top