2016-11-21 12 views
0

私の英語は申し訳ありませんが、PowerShellスクリプトで助けが必要です。 私はpowershellスクリプトでIISサーバーを設定する必要があります。私は "アプリケーションの追加"に問題があります。サイトにWebアプリケーションが存在するかどうかを確認する必要があります。私は、サイト「testsite2」IISでpowershellを使用してWebアプリケーションを一覧表示する

$webapplication=Get-WebApplication | Where-Object {$_. applicationpool -eq "testsite2"} | select -expand Name; 

内のすべてのwebアプリケーションを選択し たいしかし、私はエラー

で終了されたコマンドに問題があります選択:1つの文字:プロパティ「の名前は」found.At行することはできません。 75 Get-WebApplication | Where-Object {$ _。アプリケーションプール-eq "testsite2"} |選択... CategoryInfoを:InvalidArgument:(Microsoft.IIs.P ... gurationElement:PSObject)[選択-オブジェクト]、PSArgumentException FullyQualifiedErrorId:ExpandPropertyNotFound、Microsoft.PowerShell.Commands.SelectObjectCommand

私は理解してドント。列「名前」から値を選択する場合、私は何をしますか?私は同じ結果に

Get-ChildItem –Path IIS:\AppPools\ | Where-Object {$_. Name -eq "testsite2"} | select -ExpandProperty applications 

結果取得

の選択:プロパティ "アプリケーションは、" 見つかりません。 行:1 char:80 Get-ChildItem -Path IIS:\ AppPools \ | Where-Object {$ _。名前-eq "testsite2"} | S ... CategoryInfo:InvalidArgument:(Microsoft.IIs.P ... gurationElement:PSObject)[選択-オブジェクト]、PSArgumentException FullyQualifiedErrorId:ExpandPropertyNotFound、Microsoft.PowerShell.Commands.SelectObjectCommand

答えて

2

WebAdministrationモジュールNameFormat-Tableのようなものを表示するためにカスタムの書式設定データを使用するという点で、ちょっと気になることがあります(下にあるオブジェクトにはNameというプロパティがありません)。

同等Name値を取得するには、Path財産を取り、/をトリム:上記

$WebAppNames = Get-WebApplication |Select @{Name='Name';Expression={$_.Path.Trim('/')}} |Select -Expand Name 

され、正確にPowerShellの書式設定のサブシステムがName値を計算するために何をしますか。

Get-WebApplication |Get-Member 

これはまた、あなたが任意の追加のタイプ - またはFormat-を探索するために使用できるタイプの名前を、表示されます:


あなたは、オブジェクトがGet-Memberコマンドレットであり、実際のプロパティを探索することができます適用される可能性のあるデータ:

Get-TypeData -TypeName 'Microsoft.IIS.PowerShell.Framework.ConfigurationElement#site#application' 
Get-FormatData -TypeName 'Microsoft.IIS.PowerShell.Framework.ConfigurationElement#site#application' 
+0

私はあなたがこれらの実際の特性を見つける方法を示すために、取得するメンバーを含めるように答えを編集示唆;) – 4c74356b41

+1

4c74356b41 @良いアイデア、更新の回答 –

関連する問題