1

Powershell で子の結果セットに親レベルのプロパティを含めたいのですが、その方法がわかりません。私がやりたいことの例は、パイプの最初の列として ServerName を含めて、次のようなサーバー上のすべてのデータベースの DatabaseName とデータベース プロパティのリストを取得することです。

[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | out-null
$s = New-Object ('Microsoft.SqlServer.Management.Smo.Server') "SQLSERVER"

$s.Databases | select $s.Name, Name, AutoShrink, AutoClose

これは、私がやろうとしていることの単純化された例です (データベースの親プロパティを使用して $s.Name を簡単に取得できます) が、この同様の方法論と親を使用したいはるかに複雑なアプリケーションがあります。プロパティは私が求めているものではありません。また、$s.Name を ServerName に、$_.Name を DatabaseName にエイリアスできれば、理想的な出力になります。

編集:

これをオンラインで行う方法を2日間検索しましたが、参照が見つかりません。Google/Bing/答えが何であれ、たまたま見つけたものを共有していただければ、本当に感謝しています。私は通常、物事に対する答えを見つけることができますが、2日後、私は悪いことの後に良い時間を投げています.

4

1 に答える 1

3

Parent プロパティは必要ありませんか?

$s.Databases | select Parent, Name, AutoShrink

編集:

$s.Databases | select @{Name="ServerPlatform"; Expression={$_.Parent.Platform}}, Name, AutoShrink
于 2010-01-28T02:29:56.513 に答える