Como APENAS obter o valor da propriedade

2

Eu quero recuperar endereços IP de nomes de computador, mas eu quero apenas o IP nada mais.

$computer = 'Server1'
$computer = [System.Net.Dns]::GetHostAddresses($computer) | select IPAddressToString

Retorna @ {IPAddressToString = x.x.x.x}. Como eu retorno 'x.x.x.x'

    
por Delonte Johnson 17.08.2015 / 23:14

2 respostas

5

Usando seu exemplo, você digita $Computer.IPAddressToString para retornar a matriz de endereços IP. Se houver apenas 1 endereço IP para esse nome de host, isso é tudo. No entanto, um nome de host pode ter muitos endereços e é por isso que é um array. Então, se você quiser apenas ver o primeiro endereço IP na matriz, você pode digitar $Computer.IPAddressToString[0]

    
por 18.08.2015 / 00:15
4

Substituir

| select IPAddressToString

com

| select -ExpandProperty IPAddressToString

Isso fornecerá uma matriz de strings, portanto, se você quiser endereços individuais, use algo como

([System.Net.Dns]::GetHostAddresses($computer) | select -ExpandProperty IPAddressToString)[0]
    
por 18.08.2015 / 04:47

Tags