2013-02-01 84 views
0

當我運行下面的腳本,它返回:@{Name=<Usersname>} not found爲什麼我的PowerShell腳本中有額外的輸出'@ {..}'?

Foreach ($object in Get-childitem "\\HomeDriveServer\home$\" | select Name) 
{ 
$userAccount = get-aduser -Filter {SamAccountName -like "*$object*"} 
if($userAccount -eq $null) 
    { 
write-host "$object not found" 
    } 
else 
    { 
write-host "$object found" 
    } 
} 

Get-childitem "\\HomeDriveServer\home$\" | select Name回報的文件夾名稱列表細而不@{Name= XXX }

爲什麼是@{Name= XXX }出現,我怎麼能擺脫它?

謝謝

+0

這就是如何顯示哈希表。 – Joey

+0

在第一行使用'Select -expand Name'。你正在比較一個名爲'SamAccountName'的名稱屬性的對象,而不是像你應該的名字值(一個字符串)。 –

回答

0

你看到的不完全是你得到的。您的查詢返回一個集合。 您應該嘗試:

Foreach ($object in Get-childitem "\\HomeDriveServer\home$\" | select -ExpandProperty Name) 
{ 
$userAccount = get-aduser -Filter {SamAccountName -like "*$object*"} 
if($userAccount -eq $null) 
    { 
write-host "$object not found" 
    } 
else 
    { 
write-host "$object found" 
    } 
} 
相關問題