2017-06-15 49 views
1
使用數組/ GetWebVirtualDirectory工作

我是新來的PowerShell,所以我得到了這麼遠在PowerShell中

$sites = Get-Website 
$OrderSite = $sites | Where Name -eq 'SiteName' 
$directories = Get-WebVirtualDirectory -Site $OrderSite.Name 

這樣$directories看起來像

Name    Physical Path 
----    ------------- 
Profile   C:\Path1 
WebMain   C:\Path1 

現在我堅持

$directories[0] = 

Name    Physical Path 
----    ------------- 
Profile   C:\Path1 

$directories[0].Name$directories[0]["Name"]$directories |Where Name -eq 'Profile',$directories |Where Name -like 'P*'$directories | ForEach {$_.Name }均爲空

然而,$directories | ForEach {$_ }$directories |Where Name -like '*'

返回的完整列表。

那麼過濾或訪問屬性的正確方法是什麼名稱或如何驗證我的數組真實名稱或屬性是什麼?

+1

什麼'$目錄。 GetType()'或'$ directories | Get-Member'返回? – gms0ulman

+0

'$ directories |選擇名稱' – Moerwald

+1

'GetType()'返回Object [] System.Array的BaseType,'Get-Member'返回TypeName:Microsoft.IIs.PowerShell.Framework.ConfigurationElement#application#virtualDirectory – Mike

回答

1

不幸的是我不能在我的電腦上測試這個不是IIS Provider

我相信,這將讓你你以後,基於什麼作品和不起作用的問題:

$directories | Where-Object {Path -eq 'Profile'} 

Where-Object預計聲明{...}

+0

這也返回空字段的名稱似乎是路徑,即使列標題說的名稱也是'Where path -eq'..也路徑以未顯示的'\'開始在名稱列中...所以將其改爲路徑,我將標記答案,因爲您的評論引導我朝着正確的方向 – Mike

+0

@Mike huh,好的。編輯 - 現在看到您的評論,很高興聽到它的排序!你可以發佈你的答案並接受它,以防其他人有同樣的問題:-) – gms0ulman