PowerShell スクリプトを使用して、webapplication のすべての rootweb にカスタム プロパティを追加する必要がありますか? どうやってするか?
2 に答える
一般に、New-Objectを使用して新しいカスタムオブジェクトを作成できます。
$customObject = New-Object -Property @{"Name"="Ravi";"Age"=30} -TypeName PSObject
$customObject
Age Name
--- ----
30 Ravi
または、Update-TypeDataコマンドレットを使用して既存の.NETタイプを拡張できます。PowerShell v2では、これには、タイプデータ用のカスタムps1xml形式ファイルを作成する必要があります。PS1XML形式のファイルを作成する方法:http://msdn.microsoft.com/en-us/library/windows/desktop/dd878339(v = vs.85).aspx
PowerShell v3では、これははるかに簡単です。同じUpdate-TypeDataコマンドレットを使用して、セッション内でプロパティを拡張できます。ただし、オブジェクトプロパティに加えられた変更は、現在のセッションにのみ存在します。PowerShellコンソールまたはその他のPowerShellホストを開くたびに、PowerShellプロファイルを使用してこれらの変更を行う必要があります。
PowerShell 3.0での拡張タイプの追加:http ://www.powershellmagazine.com/2012/08/29/pstip-adding-extended-types-the-powershell-3-0-way/
何かのようなもの
#Add-PSSnapin Microsoft.Sharepoint.Powershell
$spWeb = Get-SPWeb -Identity "http://sp_site..."
$myRootWeb = $spWeb.RootWeb | Add-Member NoteProperty MyProp -Value test -PassThru
$myRootWeb.MyProp