powershell 合并对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell 合并对象相关的知识,希望对你有一定的参考价值。

function Combine-Objects {
	[CmdletBinding(SupportsShouldProcess=$True,DefaultParameterSetName="DefaultPS")]
	PARAM(
	    [Parameter(Mandatory = $true, Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName="DefaultPS")]
		$InputObject
		, 
	    [Parameter(Mandatory = $true, Position = 1, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName="DefaultPS")]
		$AppendObject
		,
	    [Parameter(Mandatory = $false, Position = 2, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName="DefaultPS")]
		[String[]]
		$ExcludeProperty
	)

	begin {
	}

	process {
		$hash = @{}
		foreach ($Property in $InputObject.PSObject.Properties){
			if ($ExcludeProperty -inotcontains $Property.Name) {$hash += @{$Property.Name = $Property.Value}}
		}
		foreach ($Property in $AppendObject.PSObject.Properties){
			if ($ExcludeProperty -inotcontains $Property.Name) {$hash += @{$Property.Name = $Property.Value}}
		}
		$OutputObject = New-Object -TypeName PSObject -Property $hash
		$OutputObject | Select-Object ([string[]]($OutputObject | Get-Member | ? {$_.MemberType -eq 'NoteProperty'} | % {$_.Name} | Sort-Object))
	}

	end {
	}
}

以上是关于powershell 合并对象的主要内容,如果未能解决你的问题,请参考以下文章

在 PowerShell 中合并哈希表:如何?

powershell合并csv

在 Powershell 中,将两个表合并为一个的最佳方法是啥?

使用 PowerShell 将多个 CSV 文件合并为一个

powershell 文件内容合并

powershell 文件内容合并