2012-06-15 54 views
1

使用powershell cmdlet時,我經常發現需要將開關設置爲有限數量的選項,但我不知道這些選項是什麼選項。我最終花了數小時試圖谷歌我想要的選項。有沒有更好的辦法?我試過看微軟網站和Get-Help -examples,但沒有一個爲我想要的開關提供值。Powershell獲取變量選項

下面是一個例子。

Set-SPWebApplication <a couple of switches...> -AuthenticationMethod <String> 

-AuthenticationMethod的可接受值是多少?

這只是一個例子,但我遇到了這個問題很多。我認爲Get-Help中應該有一些東西能夠照亮我,但這通常是無益的。

回答

5

我所知道的最簡單的方法是通過一個無效的選項,並在錯誤信息獲取列表:

PS> Set-ExecutionPolicy foo

的Set-ExecutionPolicy:無法綁定參數「ExecutionPolicy」。由於枚舉值無效,無法將值「foo」轉換爲鍵入「Microsoft.PowerShell.ExecutionPolicy」。指定以下枚舉值之一併重試。 可能的枚舉值是「無限制,遠程簽名,全部簽名,限制,默認,繞過,未定義」。

在行:1字符:20
+ SET-ExecutionPolicy < < < < FOO
+ CategoryInfo:InvalidArgument:(:) [設置ExecutionPolicy],ParameterBindingException
+ FullyQualifiedErrorId:CannotConvertArgumentNoMessage,Microsoft.PowerShell .Commands.SetExecutionPolicyCommand

在這一點上,你也有類型的,所以你也可以使用製表符完成獲取有效值:

PS> [Microsoft.PowerShell.ExecutionPolicy]::標籤

+0

太好了,非常感謝。我希望微軟能夠提供一種簡單的方法來查找它,就像使用get-help一樣,但這是有效的。 – StaticMethod

+0

Get-Help是由某人撰寫的,所以在很多情況下,這些選項都在這裏列出並解釋。但有時他們並不可悲, – Joey

1

不能與Set-SPWebApplication測試,但:

get-help out-file -Parameter "encoding" 

給paramenter的解釋和可能的值的列表。

0

可以連同後

get-help out-file -Parameter "encoding" 

那麼Christian曾建議

(get-help out-file).syntax ## gives you the sytax 

使用Christian's version利用這一點,與第一個1,你可以看看語法,然後用第二個查詢進入語法的細節。您可以用Set-SPWebApplication替換out-file

希望這會有所幫助。