2013-06-11 52 views
1

這可能嗎?我需要從System.DirectoryServices.PropertyValueCollection轉換爲String從.Name屬性更改爲字符串

$ou = [ADSI]"LDAP://OU=Domain Controllers,DC=domain,DC=local" 
foreach ($child in $ou.psbase.Children) { 
    if ($child.ObjectCategory -like '*computer*') { 
     Write-Host $child.Name 
     if (Test-Connection -quiet $child.Name) { 
      Test-Connection $child.name 
      Invoke-GPUpdate $child.name 
     }else{Write-Host "$child.Name is offline"} 
    } 

} 

回答

1

就像這樣: $ child.Name.ToString()

編輯:我只是在我的實驗室測試和實際工作的,不知道到底爲什麼:

$child | %{$_.name} 
1

我相信你的問題在這裏:

}else{Write-Host "$child.Name is offline"} 

嘗試:

}else{Write-Host "$($child.Name) is offline"} 

在一個字符串變量的屬性不會被擴展,你需要把它們放在$()符號。